親オブジェクトから静的メソッドを取得する際に問題が発生しました。次のコードを調べます。親オブジェクトの静的メソッドを取得する
var objType = typeof(myClass); // myClass is a ChildClass object
var methods = objType.GetMethods(BindingFlags.Static | BindingFlags.FlattenHierarchy);
親クラス:
public class ParentClass {
public static T GrabStuff<T>(string values) {
GrabStuff<T>(values, false);
}
// ---- Updated
public static T GrabStuff<T>(string values, bool isSomething) {
// TODO: Do Stuff
}
// ---- Updated
}
子供クラス:
public class ChildClass : ParentClass {
}
メソッドが返すと0オブジェクトの配列されます。
静的メソッドのリストを取得するためにここで何か間違っていますか?
はい、これは働いていました。しかし、どのように私はオーバーロードされているメソッドをプルするだろうか?これは、BindingFlags.Publicを追加したときに機能しました。しかし、上記の例では表示されていませんが、GrabStuffがオーバーロードされており、「あいまい一致」が見つかりました。私はGetMethod関数を使用します。何か案は? – Sean
これを再現するいくつかのコードで質問を更新できますか? – BrokenGlass
コードが編集され、更新されました。 – Sean