我如何引用实体?我知道这一行
if(!db.users.any(u => u.customer =="mike")
(db.users)引用users表..所以现在我需要引用.cs中的iqueryable
public IQueryable<Address_List_NEW> GetAddress_List_NEWs(string Customer)
{
return this.DataContext.Address_List_NEWs;
}
为什么这不起作用?
if(!Address_List_NEW.any(u => u.Customer == "mike")
答案 0 :(得分:0)
您应该返回强类型IQueryable<T>
,否则Linq不知道您正在访问的对象的属性:
public IQueryable<Address_List_NEW> GetAddress_List_NEWs()
{
return this.DataContext.Address_List_NEWs;
}
请记住,您没有使用传入的参数,因此我删除了它 - 这是您的意图吗? (现在这种方法没有做太多的事情)
然后你应该能够做到:
var adressList = GetAddress_List_NEWs();
if(!adressList.Any(u => u.Customer == "mike"))
...
答案 1 :(得分:0)
Address_List_NEW
是一个类的名称,而不是IQueryable<Address_List_NEW>
,因此您无法调用Any
。
根据你的功能签名,看起来你想写这个:
public bool CustomerHasAddress(string Customer)
{
return !this.DataContext.Address_List_NEWs.Any(u => u.Customer == Customer);
}
或者可能是这样的:
public IQueryable<Address_List_NEW> GetAddress_List_NEWsForCustomer(string Customer)
{
return this.DataContext.Address_List_NEWs.Where(u => u.Customer == Customer);
}
然后你可以拨打GetAddress_List_NEWsForCustomer("mike").Any()
甚至是这样的事情:
public IQueryable<Address_List_NEW> GetAddress_List_NEWs()
{
return this.DataContext.Address_List_NEWs;
}
您可以从中拨打GetAddress_List_NEWs.Any(u => u.Customer == "mike")