System.Reflection.MethodInfo
がクラスの実装であるIDisposable.Dispose
を参照しているかどうかを確認するためのより正式な/フェイルセーフの方法はありますか?メソッドがIDisposable.Disposeを実装していることを確認してください。
System.Reflection.MethodInfo methodInfo;
methodInfo = ...; //methodInfo obtaining code here
bool isDisposeMethod = methodInfo.Name == "Dispose";
IはすでにクラスがIDisposable
を実装し、したがって、Dispose
が存在し、私はDispose
が(他のクラスの方法と比較して)呼び出されたときに特殊な機能を実行すべきであるPostSharpの態様を使用していることを知っています。
クラスが 'IDisposable'を実装している場合、そのクラスが' Dispose'を実装していることが保証されています - それがインターフェイスのポイントです。 – Blorgbeard
私はそれを理解しています。私は 'Dispose'が存在することを知っていますが、PostSharpのアスペクトを使用しています。これは、別の関数と比較して' Dispose'が呼び出されたときに特別な機能を実行する必要があります。 PostSharpアスペクトはメソッドシグネチャを 'System.Reflection.MethodInfo'に返します。 –