4
我想讓一個類來處理使用我自己的方式在遠程服務器上調用方法。爲了讓客戶端調用者更容易,我正在編寫一個接受接口的泛型類,以便編譯器知道參數的數量和方法的返回類型。你如何檢查傳遞給委託的參數?
public class Service<TInterface>
{
public TResult Invoke<TResult>(Func<TInterface, TResult> function)
{
// Do the work
}
}
這樣的想法是,他們可以參考具有接口的組件,例如:
public interface ICalculator
{
int Add(int num1, int num2);
}
然後他們可以編寫代碼來打這樣的服務:
var addend = new Service<ICalculator>(/* constructor */).Invoke(s => s.Add(3, 4));
問題是,在第一個代碼塊中,我需要知道如何找出它們在lamda表達式中傳遞的參數。我怎麼做?
對,好友。就是這樣。 =) – 2010-08-02 14:42:03