c# - 如何将谓词传递给 C# 中的函数?

标签 c# asp.net c#-4.0 predicate

我有:

 public void InitializeStatusList(DropDownList list)
    {
       var dictionaryEntries = GetEntriesFromDatabase();
       list.DataSource = dictionaryEntries.Where(entry => entry is EntryStatus1 || entry is EntryStatus2);
       list.DataBind();           
    }

我有很多这样的功能。我想用作为谓词传递的 dictionaryEntries 查询条件编写通用函数。

例如:

public void InitializeStatusList(DropDownList list)
{
    CommonInitializeStatusList(DropDownList list, entry => entry is EntryStatus1 || entry is EntryStatus2);
}

public void CommonInitializeStatusList(DropDownList list, ??????????????? predicate)
{                       
    var dictionaryEntries = GetEntriesFromDatabase();
    list.DataSource = dictionaryEntries.Where(predicate);
    list.DataBind();        
}

什么代表????????????????

提前致谢

最佳答案

Func<Entry, bool> predicate应该工作,在哪里 Entryentry 的类型变量。

关于c# - 如何将谓词传递给 C# 中的函数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10530669/

相关文章:

linq - 为什么方法没有被调用?

C# 通用行为与 C++ 模板

c# - 如何在 C# 中检查日期是否为 mm/DD/yyyy 格式

asp.net - 为什么 HTML 标准重置按钮不能重置 asp.net 表单的值?

javascript - 将 C# 变量传递给 HTML 按钮

c#-4.0 - 使用 Fluent Nhibernate 从系统命名空间映射 DayOfWeek

c# - 来自 using block 的异常抛出

c# - 阻止 System.Net.IPAddress 类中的混合 IPv6 格式

c# - 命名空间问题

c# - 将 WCF 4 中的默认 JSON 序列化程序替换为 JSON.NET