我正在使用System.Reflection.Emit创建一个从现有程序集B调用方法的新程序集A.
B中的方法使用一些自定义属性进行注释,我想以编程方式删除它们。我无权访问生成B的源代码。
我无法在.NET框架中找到记录的方法来执行此操作。有什么指针吗?
非常感谢!
答案 0 :(得分:1)
我不相信这是可能的。属性被编译为IL。以编程方式删除它们就像尝试以编程方式删除方法或属性一样。
答案 1 :(得分:1)
您可以查看PowerShellArsenal 它有一个用于删除SuppressIldasmAttribute的脚本。
我还没有看过它,但我猜你可以使用用于删除任何属性的代码。
移除-AssemblySuppressIldasmAttribute
从.NET程序集中删除SuppressIldasmAttribute属性。