将参数传递给委托方法

时间:2014-04-25 07:35:15

标签: c# delegates

我有以下情况:

private void RequestInfo(string a, string b)
{
   var c = a+b;
   library.FetchInfo(c, OnInfoReceived);
}

private void OnInfoReceived(CustomParameterType object)
{
   dictionaryOfInfo.Add(c, object);
}

正如您所看到的,我的问题是我无法在作为FetchInfo函数的参数传递的回调中访问变量“c”。

1 个答案:

答案 0 :(得分:2)

在C#3.0及更高版本中,您可以像这样使用lambda expression

private void RequestInfo(string a, string b)
{
   var c = a+b;
   library.FetchInfo(c, obj => dictionaryOfInfo.Add(c, obj));
}