System.Reflection.Emitを使用して、既存のアセンブリBからメソッドを呼び出す新しいアセンブリAを作成しています。
Bのメソッドにはいくつかのカスタム属性が付けられているので、プログラムでそれらを削除したいと思います。Bを生成したソースコードにアクセスできません。
これを行うための文書化された方法を.NETFrameworkで見つけることができませんでした。ポインタはありますか?
トンありがとう!
System.Reflection.Emitを使用して、既存のアセンブリBからメソッドを呼び出す新しいアセンブリAを作成しています。
Bのメソッドにはいくつかのカスタム属性が付けられているので、プログラムでそれらを削除したいと思います。Bを生成したソースコードにアクセスできません。
これを行うための文書化された方法を.NETFrameworkで見つけることができませんでした。ポインタはありますか?
トンありがとう!
私はそれが可能だとは思わない。属性はILにコンパイルされます。プログラムでそれらを削除することは、プログラムでメソッドまたはプロパティを削除しようとするようなものです。
PowerShellArsenalを調べることができます。
SuppressIldasmAttribute を削除するためのスクリプトがあります。
私はそれを見ていませんが、それに使用されるコードを使用して、ほぼすべての属性を削除できると思います。
削除-AssemblySuppressIldasmAttribute
.NET アセンブリから SuppressIldasmAttribute 属性を取り除きます。