2010-03-15 39 views
0

我正在使用表驱动方法编写一个if/else选项。关于代表字典的问题

我有以下代码:

var map = new[] 
{ 
    new 
    { 
     Predicate = new Func<Type, bool>(type => type.IsInterface), 
     Selector = new Func<Type, Delegate>(str, sww.Invoke()) 
    } 
}; 

在选择器,我想返回我可以调用(指向另一方法)一个delagate,或在管线中指定(例如,(delegate() { // Do something here. }

我使用(和修改)从这里代码:Table Driven Method issue

我怎样才能做到这一点

回答

3

而不是Delegat e,您可以使用特定的代理类型,例如操作:

Selector = new Func<Type, Action>(str, sww.Invoke)