CSharp

Delegate.CreateDelegateにおける、メソッドを動的に呼び出す方法を紹介します。

サンプル1:

//自作クラス
public class TestClass
{
    public TestClass()
    {

    }
    public string TestMethod()
    {
        return "test";
    }
}

class Program
{
    delegate string TestDelegate();

    static void Main(string[] args)
    {
        TestDelegate d = Delegate.CreateDelegate(typeof(TestDelegate),
                                Activator.CreateInstance(typeof(TestClass)), 
                                "TestMethod")
                            as TestDelegate;

        string ss = d.Invoke();
        Console.WriteLine(ss);
}

サンプル2:

delegate DateTime DateTimeDelegate();

DateTimeDelegate d = Delegate.CreateDelegate(
                           typeof(DateTimeDelegate), 
                           Activator.CreateInstance(typeof(DateTime), 2012, 9, 10),
                           "ToUniversalTime")
                      as DateTimeDelegate;
DateTime ss = d.Invoke();
Console.WriteLine(ss);


中古車買取実績No.1ガリバー

コメント:



(画像の文字列を入力して下さい)

トップ   編集 凍結 差分 添付 複製 名前変更 リロード   新規 一覧 単語検索 最終更新   ヘルプ   最終更新のRSS
Last-modified: 2019/12/02 (月) 12:33:24 (1627d)

PCpዾyǗlgĂ܂}WŔ܂z 萔O~ył񂫁z Yahoo yV NTT-X Store

z[y[W ̃NWbgJ[h COiq ӂ邳Ɣ[ COsیI COze