C# Asp.NET MVC中与Linq的数组比较
我正在Asp.NETMVC项目中使用linq进行数据库操作。我想吸引那些在AgentThealth表中有站点代码的客户。如何在一次操作中使用linq实现这一点C# Asp.NET MVC中与Linq的数组比较,c#,asp.net,linq,C#,Asp.net,Linq,我正在Asp.NETMVC项目中使用linq进行数据库操作。我想吸引那些在AgentThealth表中有站点代码的客户。如何在一次操作中使用linq实现这一点 var CurrentCustomers = new List<Customer>(); var CurrentCustomersDisc = Database.Session .Query<agenthealts>()
var CurrentCustomers = new List<Customer>();
var CurrentCustomersDisc = Database.Session
.Query<agenthealts>()
.ToList()
.Select(x => x.sitecode)
.Distinct()
.ToList();
foreach(var CurrentDisc in CurrentCustomersDisc)
{
var TempCustomer = Database.Session
.Query<Customer>()
.FirstOrDefault(x => x.deleted_at == null
&& x.SiteCode == CurrentDisc);
if(TempCustomer != null)
{
CurrentCustomers.Add(TempCustomer);
}
}
var CurrentCustomers=新列表();
var currentCustomerDisc=Database.Session
.Query()
托利斯先生()
.选择(x=>x.sitecode)
.Distinct()
.ToList();
foreach(CurrentCustomerDisc中的var CurrentDisc)
{
var tempcuster=Database.Session
.Query()
.FirstOrDefault(x=>x.deleted_at==null
&&x.SiteCode==CurrentDisc);
if(TempCustomer!=null)
{
CurrentCustomers.Add(临时客户);
}
}
您可以选择客户Id(或主键是什么)在“CurrentCustomerDisc”中的位置:
var CurrentCustomers = Database.Session.Query<Customer>.Where(c=>
CurrentCustomersDisc.Select(cc=> cc.Id).Contains(c.Id));
var CurrentCustomers=Database.Session.Query.Where(c=>
currentCustomerDisc.Select(cc=>cc.Id).Contains(c.Id));
是否要从每个代理中随机提取一个客户第十,站点代码==CurrentDisc
并将所有这些客户放在一个列表中?是的,CurrentCustomerDisc是一个站点代码数组,每个客户都有一个站点代码。请检查我的回答。此外,请更新您的问题,明确说明您正在寻找的是一份包含每个代理商的客户的列表,以便明确问题所在。感谢这看起来可以在SQL中的一个简单查询中完成。但我不知道sql的linq前端。这是实体框架吗?@İsmail Kasap-请标记所使用的框架-在会话中看起来像NHibernate。Query
,对吗?Rica ederim;)İsmail bey