大丈夫です、私はこの質問のタイトルが理にかなっていることを願っています。私のアプリケーションでは、特別なInvokeMethodによって呼び出されるべきいくつかのメソッドがあります。現時点では、それは次のように動作します。は、invokeMethodを呼び出すにはFuncデリゲートのよりよい(一般的な)宣言
internal bool RemoteLogin(string password)
{
return (bool)InvokeMethod(new Func<string, bool>(Server.RemoteLogin), password);
}
internal string GetSessionId()
{
return (string)InvokeMethod(new Func<string>(Server.GetSessionId));
}
public object InvokeMethod(Delegate method, params object[] args)
{
return method.DynamicInvoke(args);
}
私は....新しいのFunc <を渡す必要があり>、パラメータ(複数可)を追加しても、適切な型に戻り値をキャスト。ジェネリックスやリフレクションを使用するなど、より優れた(より一般的な)方法がありますか?
ご協力いただきまして誠にありがとうございます。
なぜメソッドを直接呼び出さないのですか?なぜDelegate.DynamicInvokeをここで使用しますか? –
上記の私の例では、メソッドInvokeMethodは単純化されています。私のアプリでは、ログ、モニタ、例外処理などの呼び出しを行います。 – Mike