オブジェクトのメソッドを呼び出す必要がありますが、実行時までメソッド名はわかりません。実行時にメソッドを呼び出すさまざまな方法は何ですか?
どのようなテクニックがありますか?
(例えばgetMethod()メソッド。呼び出し()、代表者、ダイナミック#4.0 C)
ありがとう!
オブジェクトのメソッドを呼び出す必要がありますが、実行時までメソッド名はわかりません。実行時にメソッドを呼び出すさまざまな方法は何ですか?
どのようなテクニックがありますか?
(例えばgetMethod()メソッド。呼び出し()、代表者、ダイナミック#4.0 C)
ありがとう!
C#4.0 dynamic
機能がこれを行う最も簡単な方法になるだろう。非常に実際の意味では、dynamic
はReflectionの周りの「単なるラッパー」です。それは非常にの良いラッパーですが、それはおそらくあなたの最良の選択です。約難しいのレベルを上げることで
他の方法、:
最後の3つは、心のかすかなものではありません。あなたの最善の策は、dynamic
を使うか、独自のReflectionコードを書くことです。 3年前に私が同じようなコードを書いていたときにdynamic
があったなら、私はそれを使ったでしょう。
Reflectionを使用して、実行時まで名前がわからない関数を呼び出すことができます。ここではいくつかのドキュメントです:
http://msdn.microsoft.com/en-us/library/f7ykdhsy%28VS.80%29.aspx
あなたはすでに何が必要かを知っています。あなたの質問の範囲を狭めてみて、それについての本を書く必要はありません。 –
@ハンス:残念ながら、私はすべてのオプションを知っていません。この質問を投稿した後、私はILも出すことができることを発見しました。最低限、私はさらなる研究のためのテクニックのリストを期待しています。ありがとう。 –