最近我在c#解决方案中遇到了以下异常:

错误2无法加载文件或程序集'Newtonsoft。Json, Version=3.5.0.0, Culture=neutral, PublicKeyToken=b9a188c8922137c6'或 它的依赖项之一。参数不正确。(例外 HRESULT: 0x80070057 (E_INVALIDARG))

这既不取决于我的代码,也不取决于程序集的名称(如Newtonsoft)。Json)。

当我从解决方案中删除这个dll时,编译器会在相同的异常中告诉另一个dll。所以我想我的电脑应该关闭/打开一些东西:)


当前回答

如果您正在使用SQL Server 2012的数据工具,在2013年5月1日使用VS2010 shell,请检查您的配置管理器设置。将服务器名称从Workflow更改为xCPWorkflow足以产生完全相同的参数不正确(Exception from HRESULT: 0x80070057 (E_INVALIDARG))消息。

其他回答

我在这里遇到了同样的问题——上面的解决方案不起作用。问题出在ActionMailer上。我运行了以下卸载和安装nuget命令

uninstall-package ActionMailer
install-package ActionMailer

解决了我的问题,希望能帮助到别人。

清除C:\Windows\Microsoft.NET\Framework\v2.0.50727\临时ASP。NET文件对我有用。考虑将删除过程自动化,以避免将来出现这种问题。

我让微软Office的Siemens Teamcenter 10客户端用户得到关于不同DLL的相同错误。其他答案都没用。解决方案是删除文件夹

C:\Users\%username%\AppData\Local\assembly\

如果还有其他人在使用WiX工具集,我发现我的安装程序项目引用了一个最近从解决方案中删除的旧项目。我花了一段时间才意识到,因为在我试图构建的解决方案中有许多项目,并且消息没有指出哪个项目构建失败了(以及干净的,哪个项目也失败了)。

在我的情况下,我想编译一个COM可见DLL。问题是这个DLL的旧版本位于这里:

C:\Program Files (x86)\Microsoft Visual Studio 10.0\Common7\IDE

因此Visual Studio加载这个版本,而不是新编译的版本,因为它试图注册它。