我是c#的新手.主要来自PHP背景或基本VB.
我明白IEnumerable<Customer>这就像是一个客户名单.
但是是什么Action<IEnumerable<Customer>, Exception>.类型IEnumerable<Customer>&的动作Exception.似乎对我来说没什么意义.
在C#中,Action并且Func是函数指针,你可以通过他们周围,就像任何其他对象,并调用它们正是你调用其他功能相同的方式.基本上Action<IEnumerable<Customer>, Exception>意味着:
IEnumerable<Customer>并Exception作为输入.这将是一个兼容的签名:
void DoStuff(IEnumerable<Customer> customer, Exception e) { ... }
Run Code Online (Sandbox Code Playgroud)
有时像你所拥有的那样长的通用签名可能很麻烦,有时可以更好地将这些参数移动到单个对象中,例如:
class CustomerContext {
public IEnumerable<Customer> Customers { get; set; }
public Exception Exception { get; set; }
}
Run Code Online (Sandbox Code Playgroud)
至少那时你可以传递一个Action<CustomerContext>,这可以节省一些打字和理智:)
| 归档时间: |
|
| 查看次数: |
295 次 |
| 最近记录: |