关于c#:无法加载文件或程序集” Microsoft.SqlServer.Types,版本= 12.0.0.0,Culture = neutral,PublicKeyToken = myKey”或其依赖项之一。

Could not load file or assembly 'Microsoft.SqlServer.Types, Version=12.0.0.0, Culture=neutral, PublicKeyToken=myKey' or one of its dependencies.

使用SQL SERVER版本2012运行ASP.NET C#应用程序后,出现以下错误消息:

本地报告处理期间发生错误。
报告的定义\\'C:\\\\\\\\ inetpub \\\\\\\\ wwwroot \\\\\\\\ psla \\\\
eports \\\\\\\\ PD列表报告-每个ED.rdlc \\'无效。
报表处理中发生意外错误。
无法加载文件或程序集\\'Microsoft.SqlServer.Types,版本= 12.0.0.0,文化=中性,PublicKeyToken = 89845dcd8080cc91 \\'或其依赖项之一。找到的程序集的清单定义与程序集引用不匹配。 (HRESULT的异常:0x80131040)

可能是什么原因?我尝试在网上搜索,但没有引用版本= 11.0.0.0,但是没有引用对于\\'Microsoft.SqlServer.Types \\'的版本= 12.0.0.0。回顾Visual Studio 2015的参考管理器,我只能找到最新的版本= 11.0.0.0。


在软件包管理器中,从Nuget下载12版本。

https://www.nuget.org/packages/Microsoft.SqlServer.Types/

还可以看到,此条目在web.config

中是向后兼容的

在您的引用文件夹中,右键单击并设置copy local = true


项目中的某些库似乎正在引用Microsoft.SqlServer.Types,版本= 12.0.0.0,但.NET运行时在执行时找不到它。

在运行应用程序的Web服务器上,确保存在以下目录:C:\\Windows\\assembly\\GAC_MSIL\\Microsoft.SqlServer.Types\\12.0.0.0__89845dcd8080cc91\\

还请确保该目录具有版本12(12.0.2000.8)的文件Microsoft.SqlServer.Types.dll。可以从https://www.nuget.org/packages/Microsoft.SqlServer.Types/

下载文件的不同版本。