Эта проблема хорошо известна для всех проектов .NET 2.0, которые хотят использовать методы расширения внутри и поэтому объявляют свои собственные внутренние System.Runtime.CompilerServices.ExtensionAttribute
, чтобы разрешить это.
Существуют различные способы решения этой проблемы, если вы используете .NET 3.5 или выше, просто скомпилируйте Mono.Cecil с определением NET_3_5
или NET_4_0
. Если вы ориентируетесь на .NET 2, вам может повезти и заставить его скомпилировать (это зависит от некоторых внутренних компонентов компилятора, определенно не от командной строки csc или MSBuild). Если нет, то обходной путь будет исключать все вхождения этого атрибута (включая определение) из сборки Cecil 2.0 (с использованием самого Cecil ...).
Я уже сделал это , и это не имеет большого значения. Однако я чувствую, что ваша проблема другая, поэтому, пожалуйста, предоставьте немного больше информации о версии Mono и .NET, которые вы используете / нацеливаете.