我对 EF 5 很陌生。我有一个简单的搜索要求,用户可以根据几个搜索条件搜索给定的实体(比如客户)。用户可以选择使用或不使用标准。搜索条件需要“与”所有条件。所以我写这样的代码
IQueryable _customer;
_customer = from c in context.Customer
where
(txtCustomerName.Text.Length == 0 || c.name == txtCustomerName.Text)
&& (txtpropcust1.Text.Length == 0 || c.customfield1 == txtpropcust1.Text)
&& (txtpropcust2.Text.Length == 0 || c.customfield2 == txtpropcust2.Text)
&& (txtpropcust3.Text.Length == 0 || c.customfield3 == txtpropcust3.Text)
&& (txtpropcust4.Text.Length == 0 || c.customfield4 == txtpropcust4.Text)
&& (txtpropcust5.Text.Length == 0 || c.customfield5 == txtpropcust5.Text)
select c;
GridView1.DataContext = _customer;
我收到错误消息说“不支持直接将数据绑定到存储查询(DbSet、DbQuery、DbSqlQuery)。而是用数据填充 DbSet,例如通过在 DbSet 上调用 Load,然后绑定到本地数据。对于 WPF绑定到 DbSet.Local。对于 WinForms 绑定到 DbSet.Local.ToBindingList()"。
有没有其他方法可以继续?