- - PR -
動的にメソッドを呼び出したい。
1
投稿者 | 投稿内容 |
---|---|
|
投稿日時: 2004-07-27 14:58
いつもお世話になっております。
メソッドを文字列で指定し、呼び出す方法をご存知の方 ご教授願います。 JAVA で言うClassForNameをイメージしております。 |
|
投稿日時: 2004-07-27 15:11
リフレクション, System.Reflectionあたりをキーワードに検索すれば、幸せになれそうです。
|
|
投稿日時: 2004-07-27 15:14
ご参考:
http://www.atmarkit.co.jp/bbs/phpBB/viewtopic.php?topic=11900&forum=7 |
|
投稿日時: 2004-07-27 15:45
JAVAのClassForNameをよく存じておりませんが、少しばかり調べてみたところ
どうもReflectionで代用できるのではないでしょうか? 参考までにサンプルを記載致します。 戻り値の型は任意のクラス又はインターフェイスに置換えて頂いた方がよろしいかと思います。 ※その際はキャストして下さい。 なお、ReflectionでMethodinfoを取得し、任意のメソッドを呼び出す事も可能です。 =================================================================== private object GetXXXXInstance( string dllPath, string className ) { System.Reflection.Assembly asm = System.Reflection.Assembly.LoadFrom( dllPath ); foreach( Type type in asm.GetTypes() ) { if( type.Name == className ) { return( Activator.CreateInstance( type ) ); } } return( null ); } |
|
投稿日時: 2004-07-27 18:17
返答ありがとうございました。
解決いたしました。 #過去ログに記述がありましたね。。。 #失礼いたしました。。 |
1