首页 / 知识
关于.net:HRESULT:0x80131040:找到的程序集的清单定义与程序集引用不匹配
2023-04-17 05:29:00

HRESULT: 0x80131040: The located assembly's manifest definition does not match the assembly reference找到的程序集的清单定义与程序集引用不匹配 通过ncover运行nunit时得到此信息。有什么主意吗? 这是程序集之间的不匹配:从程序集引用的DLL没有预期的方法签名。 清洁解决方案,重建所有内容,然后重试。 此外,如果这是对GAC中的内容的引用,请当心;可能是某处指向错误的版本。确保(通过每个引用的属性)选择了正确的版本或将"特定版本"设置为false。 我最近遇到了这个问题,并在有问题的dll上运行了\\'depends.exe \\'。它告诉我dll是在x86中编译的,而某些依赖项是在x64中编译的。 如果您仍然遇到麻烦,建议您使用depends.exe。 对于wcf rest services项目,我必须在web.config中添加一个运行时部分,其中所请求的dll为:
通过删除所有运行时部分来解决我的问题
通常在测试环境的DLL之一的版本与开发环境不匹配时发生。 清理并构建您的解决方案,并将所有DLL带到发生错误的环境中,该错误应予以解决 只需删除bin文件夹,然后再次重新创建所有项目,它将立即开始工作。 当通过共享文件夹从其他计算机访问项目文件时,我遇到了类似的问题。就我而言,干净的重建工作无济于事。必须从输出目录中删除bin和objects文件夹。 在我的情况下,我在调试时收到此消息:
原因 在我的项目中,我有两个使用RestSharp的内部组件,但是两个组件都具有不同版本的RestSharp(一个版本为 解决方案 要么将其中一个组件升级到较新的版本,要么将另一个组件降级。就我而言,将其从 重建并且没有问题。 就我而言,这是由于WebGrease导致的。我将其更新为最新版本(使用NuGet),但与依赖项冲突。我在web.config中手动添加了以下代码,它起了很大的作用。
请注意,仅当错误与WebGrease有关时,我的解决方案才有效。错误代码将保持不变。另外,您需要相应地在oldVersion和newVersion中更改版本。 在我的特定情况下,由于在VBScript中完成了 因此,如果您正在使用COM可见类,则在向RegASM注册新程序集之前,请确保从GAC中删除程序集的旧版本。 我在一个Web api项目中遇到了这个问题。 Api项目正在使用版本3的库的nuget包。其中一个引用的程序集说X正在使用版本2相同的nuget包的较早版本。 每当构建引用的程序集或重建引用X的任何其他项目时,api项目的程序集都会使用较低版本进行更新。并得到了该程序集引用错误。 重建工作正常,但就我而言,我需要一个长期解决方案。 我使程序集引用了相同版本的nuget包。 我遇到的问题是找不到PayPal程序集,这是因为我将解决方案命名为PayPal。我确定这不会是任何人的答案,但以为我还是会分享它:C#ASP.NET MVC PayPal未找到程序集 我的WPF项目引用了3个自定义dll。我更新了其中之一,删除了引用,并将引用添加到新的dll中。它还在参考的属性中显示了正确的版本号。正在重建,没有错误。 但是在应用程序运行时,发生了"找到的程序集清单.. "失败,并提到了旧版本。 搜索了数小时的解决方案并读取了几个这样的线程后,我想起了其他dll。 别忘了检查您的其他dll! 我只是从项目中删除settings.lic文件并开始工作! 当我更新web.config而不更新所有引用的dll时,这发生在我身上。 使用适当的差异过滤器(当心Meld \\的默认目录比较过滤器,忽略二进制文件),可以识别出差异,复制文件并且一切正常。 如果在尝试向Visual Studio中添加组件时遇到此错误,- 考虑此解决方案(由larocha提供(感谢您,无论您是谁)): 来源:http://webclientguidance.codeplex.com/workitem/15444 只需检查您的webconfig文件并删除此代码:-
在Designer中工作时出现此错误。我曾在VS 2012中进行开发,但过去几天"升级"到2017年。解决方法是关闭并重新打开VS。 这可能与我在其他地方报告的错误有关,该错误在引用管理器不起作用的地方?在这种情况下,尝试在解决方案资源管理器中添加引用时会遇到以下错误消息:
我的解决方法是关闭解决方案,在VS2012中重新打开,添加引用,关闭2012,然后重新打开2017。荒谬的是,2017年应该发布了这么明显的错误。 这里只是另一种情况。第一次在VS2010 / .NET 4下将XML文件反序列化为对象时,我从Managed Debugging Assistant遇到了此错误。在生成后事件(通常是Microsoft风格的东西)中会生成一个包含对象类的DLL。对于同一解决方案中的多个项目,效果非常好,在一个以上的项目中出现问题。错误文字:
由于此处的某些答案表明平台不匹配,因此我注意到3个项目和解决方案已选择"混合平台"配置,并且为x86而不是AnyCPU编译了3个项目。我没有特定于平台的代码(尽管某些供应商提供的DLL依赖于一些x86库)。我用以下命令将所有出现的x86替换为AnyCPU:
然后将构建项目,但是用于运行或调试代码的所有选项将变为灰色。重新启动VS将无济于事。 我以git还原了对x86库的引用,以防万一,但是我编译的所有代码都保留了AnyCPU。 对于Winform应用程序,以下F5或"开始调试"按钮显示为灰色?我卸载并重新加载了开始的项目(这也是最初出现问题的地方)。 此后,一切恢复原状:程序运行时没有初始错误。 请参阅http://www.catb.org/jargon/html/R/rain-dance.html,http://www.catb.org/jargon/html/V/voodoo-programming.html或http: //www.catb.org/jargon/html/I/incantation.html及其链接。 |
最新内容
相关内容
linux命令引用文件名?
linux命令引用文件名?,工作,系统,信息,命令,数据,文件,时间,灵活,名称,标准,linux下按文件名和文件内容查找文件1、按名称查找文件你可以借助linux命令定义详解?
linux命令定义详解?,工作,系统,管理,命令,信息,单位,数据,基础,简介,目录,Linux常用命令以及解释1、linux系统常用操作命令如下:ls:全拼list,功能创建自定义命令linux?
创建自定义命令linux?,工具,状态,命令,系统,代码,标准,数据,位置,电脑,材料,LINUX中,创建文件夹、文件命令及清除命令。1、创建文件夹mkdir命linux自定义命令行?
linux自定义命令行?,系统,工作,名称,百度,命令,管理,工具,位置,信息,终端,Linux基本命令行操作(一)1、linux系统常用操作命令linux系统常用操linux配置自定义命令?
linux配置自定义命令?,服务,系统,状态,策略,周期,地方,标准,新增,环境,工具,Linux:Python编写Linux自定义命令工具state是命令执行结果的状态,r自定义命令linux命令?
自定义命令linux命令?,工具,系统,数据,命令,新增,代理,通信,地方,信息,时间,大学生程序员必备的十款工具程序员10款生产力工具快来看看 Idea-Ilinux命令行定义参数?
linux命令行定义参数?,系统,信息,名称,实时,命令,百分比,工作,周期,选项,参数,在linux系统中每一个命令都只有一种参数可以设定对吗?Linux命令linux自定义简写命令?
linux自定义简写命令?,系统,工作,命令,标准,地址,基础,信息,软件,目录,文件,基本linux命令1、linux系统常用操作命令如下:ls:全拼list,功能是列出linux命令简写自定义?
linux命令简写自定义?,系统,状态,命令,代码,工具,发行,标准,软件,文件,别名,Linux:Python编写Linux自定义命令工具1、首先我们先认识一下cat指linux用户自定义命令?
linux用户自定义命令?,系统,时间,标准,软件,项目,电脑,服务,工具,基本知识,材料,如何创建linux命令”快捷方式”或”自定义1、使用命令ln创建linux文件清单命令?
linux文件清单命令?,标准,系统,信息,设备,管理,命令,名称,文件,发行,内容,Linux必学的60个命令-文件处理安装和登录命令:login、shutdown、haltlinux自定义快捷命令?
linux自定义快捷命令?,系统,首次,位置,时间,文件,命令,链接,快捷键,终端,桌面,在linux里如何建立一个快捷方式,连接到另一个目录ln -s bbb的文