我正在使用 Mono.Cecil 操作我的 .net 2.0 程序集。操作后,我想通过注入模块属性将程序集标记为已处理
var stringType = _module.Import(typeof(string));
var baseCtor = _module.Import(typeof(GeneratedCodeAttribute).GetConstructor(new[] { typeof(string), typeof(string) }));
var result = new CustomAttribute(baseCtor);
result.ConstructorArguments.Add(new CustomAttributeArgument(stringType, "ProcessedBySomething"));
result.ConstructorArguments.Add(new CustomAttributeArgument(stringType, "1.0"));
保存程序集后,它依赖于 .net 4.0,因为操作应用程序是用 .net 4.0 编写的。GeneratedCodeAttribute 存在于 .net 2.0 中,那我做错了什么?