3

System.Reflection.Emitを使用して、既存のアセンブリBからメソッドを呼び出す新しいアセンブリAを作成しています。

Bのメソッドにはいくつかのカスタム属性が付けられているので、プログラムでそれらを削除したいと思います。Bを生成したソースコードにアクセスできません。

これを行うための文書化された方法を.NETFrameworkで見つけることができませんでした。ポインタはありますか?

トンありがとう!

4

2 に答える 2

1

私はそれが可能だとは思わない。属性はILにコンパイルされます。プログラムでそれらを削除することは、プログラムでメソッドまたはプロパティを削除しようとするようなものです。

于 2012-06-20T22:49:35.843 に答える
1

PowerShellArsenalを調べることができます。
SuppressIldasmAttribute を削除するためのスクリプトがあります。

私はそれを見ていませんが、それに使用されるコードを使用して、ほぼすべての属性を削除できると思います。

削除-AssemblySuppressIldasmAttribute

.NET アセンブリから SuppressIldasmAttribute 属性を取り除きます。

dnlibを使用して属性を削除します。

于 2016-07-04T08:57:25.083 に答える