Mono.Cecil, Missing compiler required member 'System.Runtime.CompilerServices.ExtensionAttribute..ctor'

最后都变了- 提交于 2019-12-20 01:34:33

问题


I downloaded the latest Mono.Cecil and now whenever I start up my project it gives me that error. It goes away if I remove and add mono.cecil. But that is a pain to do every time I open my project.


回答1:


This issue is a well know problem for all .NET 2.0 Projects that want to use Extension Methods internally and therefore declare their own internal System.Runtime.CompilerServices.ExtensionAttribute to allow this.

There are various ways around this problem, if you're using .NET 3.5 or higher, simply compile Mono.Cecil with NET_3_5 or NET_4_0 defined. If you're targeting .NET 2 you might be lucky and get it to compile (it depends on some compiler internals, definitely not the csc commandline or MSBuild) out of the box. If not, the workaround would be stripping all occurences of that Attribute (including the definition) from the 2.0 Cecil assembly (using Cecil itself...).

I have already done this and it's not a big deal. However I feel your issue is a different one, so please provide a little more detail on the Mono Version and .NET version you're using/targeting.




回答2:


I fixed this error by removing the reference to "Mono.Cecil.dl" and "Mono.Reflection.dll" from my project.

These two files come with db4o v8.0 (an object database) and don't appear to be needed for db4o to operate in its basic, non-optimized mode under Windows 7 x64 + .NET 4.0.




回答3:


I am also facing the same problem. The error System.Runtime.CompilerServices.ExtensionAttribute..ctor

I'm using Newtonsoft.Json.Net dll(reference) in my project. I removed the reference to the file Newtonsoft.Json.Net20.dll, and the re-added it. After this my solution builds again.

Strange but true...my application builds successfully.

Error when using extension methods in C#

Thanks,



来源:https://stackoverflow.com/questions/4353335/mono-cecil-missing-compiler-required-member-system-runtime-compilerservices-ex

标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!