7

我的 .NET 站点在 Localhost 上运行良好。但是,在我的服务器上。我得到这个错误。

“无法从程序集‘mscorlib,版本=4.0.0.0,文化=中性,PublicKeyToken=b77a5c561934e089’加载类型‘System.Runtime.CompilerServices.ExtensionAttribute’。”

(由于堆栈溢出政策,无法发布屏幕截图)

这与 asp:ScriptManager 有关。我以前在同一台服务器上使用过它,但现在它显示错误。

PS:当我删除 Scriptmanager 时,代码运行良好。

版本信息:Microsoft .NET Framework 版本:4.0.30319;ASP.NET 版本:4.0.30319.272

4

2 回答 2

18

当您针对 .Net 4.5 编译应用程序但随后在仅安装 4.0 的机器上运行它时,会出现此错误。

在 .Net 4.5 中,ExtensionAttribute该类已从 System.Core 移至 mscorlib。System.Core 中有一个类型转发器,它指向 mscorlib 中的新位置。如果您针对 4.5 编译应用程序,它会期望ExtensionAttribute在 mscorlib 中找到。如果您随后针对 4.0 运行它,您将收到此异常,因为 in 实际上存在于 4.0 中的 System.Core

要解决此问题,请将 4.5 部署到服务器或确保针对 4.0 构建

于 2013-11-12T15:53:55.170 回答
-1

只需在您的电脑或服务器上安装 microsoft framework v4.5 或更高版本,它对我来说非常有用

于 2016-06-16T12:57:37.630 回答