【发布时间】:2013-01-27 16:33:20
【问题描述】:
我正在使用 Visual Studio 开发一些软件,目标是 CLR 的 v4.5,该软件也在 Mono v2.10.8.1 上运行
一切都很好,直到我尝试使用扩展方法,此时我得到以下异常 System.TypeLoadException:无法从程序集中加载类型“System.Runtime.CompilerServices.ExtensionAttribute”......
现在,如果带有 Visual Studio 的 CLR 的目标 v4.0 并在 Mono 上运行一切正常,我注意到 System.Runtime.CompilerServices.ExtensionAttribute 类已从 CLR v4.0 中的 System.Core.dll 到 v4.5 中的 mscorlib.dll
当我使用 --verify 元数据运行 he pedump 工具时,我得到的一个程序集上的代码
程序集 myassembly.dll 中缺少方法 .ctor,类型 System.Runtime.CompilerServices.ExtensionAttribute 错误:无效的 CustomAttribute 内容行 1 值字段 0x00000109 错误:CustomAttribute:构造函数无效 错误数:2
有没有人遇到过类似的问题?有什么解决办法吗?
提前致谢
拍拍
【问题讨论】:
-
没有 VS2012 高级版,v11.0.50727.1,不知道为什么 VS 会对这个问题有任何影响
-
我想你的意思是它发生在 VS2012 RC 中,这将是 .NET 4.5 的第一次使用?
-
我要试试 Mono 版本 3:mono.1490590.n4.nabble.com/…
-
@theDmi:是的,运气。自从我发布上述内容以来,我们一直在运行 3.0.10,此后扩展方法没有任何问题。
标签: c# mono extension-methods