Answers:
在通过秃子答案下面是正确的,但你也可能需要启用32位应用程序在你的应用程序池。
资料来源:http : //www.alexjamesbrown.com/uncategorized/could-not-load-file-or-assembly-chilkatdotnet2-or-one-of-its-dependencies-an-attempt-was-made-to-load-格式错误的程序/
在设置要在本地计算机上运行(运行Vista 64位)的应用程序时,遇到此错误:
无法加载文件或程序集
ChilkatDotNet2
或其依赖项之一。试图加载格式错误的程序。
显然,该应用程序使用ChilKat组件,但似乎我们正在使用的版本仅为32位版本。
要解决此错误,我在IIS中设置了我的应用程序池以允许32位应用程序。打开IIS管理器,右键单击应用程序池,然后选择“高级设置”(请参见下文)
然后将“启用32位应用程序”设置为True。
全做完了!
我找到了解决方案。我最近将计算机升级到了Windows 2008 Server 64位。SqlServer.Replication命名空间是为32位平台编写的。为了使它再次运行,我要做的就是将Project Build Properties中的Target Platform设置为X86。
将Web项目的属性页上“平台目标”的值更改为Any CPU
。
对于那些在Visual Studio本身内的ASP.NET MVC 3项目中遇到此错误的人:
在我正在使用的ASP.NET MVC 3应用程序中,我尝试将对Microsoft.SqlServer.BatchParser的引用添加到项目中,以解决部署服务器上缺少它的问题。(我们的应用程序使用SMO;正确的解决方法是在部署服务器上安装SQL Server Native Client和其他一些功能。)
即使在删除对BatchParser的引用之后,在打开的每个ASP.NET MVC 3页面上,我仍然不断收到“尝试尝试...”错误,引用了BatchParser DLL,该错误之后是数十个页面解析错误。
如果您遇到这种情况,请执行文件搜索,以查看DLL是否仍在项目的\ bin文件夹之一中。 即使您进行重建,Visual Studio也不一定会清除所有\ bin文件夹中的所有内容。当我从垃圾箱中删除DLL并重新构建时,错误消失了。
将其更改为32位(true)即可工作
如果得到此长度,则长度不能小于零。参数名称:iis服务器配置中的长度问题做简单的事情来更改web.config文件中的连接字符串(例如sql服务器名称和服务器名称),然后重新启动iis,然后尝试加载其有效的页面
在Windows窗体应用程序中,我执行此操作,右键单击Project-> Properties-> Build-> Check Prefer 32-bit复选框。谢谢大家
删除位于以下位置的临时测试目录C:\ Users(User)\ AppData \ Local \ Temp \ VisualStudioTestExplorerExtensions \
在Visual Studio中将所有项目设置为x64
将默认处理器体系结构设置为x64(Test / TestSettings / Default Processor Architecture)。
确保清理构建解决方案文件。希望这会有所帮助!