ADO.NET 实体框架 where 子句或分组 lambda 表达式中的多个语句
我是 ADO.NET 实体框架模型的新手。使用 DotNet Framework 3.5
我有两个表:
即。 customers 和 city
客户表引用城市表中的城市名称列(外键关系)
在创建 win c# 表单时,我让用户根据以下内容过滤客户他的搜索选择(即名称、城市、号码等)这是我的结构
using(DataContext dc = new DataContext())
{
IEnumerable cust = dc.customers;
if(name != null) {
cust = cust.Where<customers>(c => c.name == name);
}
if(mobile != null) {
cust = cust.Where<customers>(c => c.mobile == mobile);
}
if(city != null) {
cust = cust.Where<customers>(c => c.city.cityname == city); //ERROR HERE
}
}
我得到一个 NullPointerException,因为没有调用 EntityReference.Load 方法。非常合乎逻辑的观点,我同意。 我想要一些关于如何在当前架构中调用加载方法的建议。是否有可能以某种方式做到这一点:
c.cityReference.Load();
c.city.cityname == city
或者可能是一些 lambda 表达式(我是新手)会引发这两个语句?有什么建议吗? 如果有人有更好的建议,我准备改变当前的架构。
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
尝试
检查 出此帖子供参考。
Try
Check out this post for reference.