C# LINQ查询未显示在DGV中
我已经研究这个问题一段时间了,所以如果我错过了某个话题,请给我指出正确的方向,并接受我的道歉 我正在对传入的数据表执行LINQ查询,并根据完成的筛选设置新列。传入的信息是一行,其中包含以下列:CompanyName、CustomerID、LastName、FirstName、ContactTitle 我的问题是,我是否过度过滤了信息,以至于它不会向DGV返回任何信息,或者我是否做了其他错误的事情 我试图做的是根据从DataTable传入的信息查询另一个表。我的问题是:C# LINQ查询未显示在DGV中,c#,database,linq,datatable,C#,Database,Linq,Datatable,我已经研究这个问题一段时间了,所以如果我错过了某个话题,请给我指出正确的方向,并接受我的道歉 我正在对传入的数据表执行LINQ查询,并根据完成的筛选设置新列。传入的信息是一行,其中包含以下列:CompanyName、CustomerID、LastName、FirstName、ContactTitle 我的问题是,我是否过度过滤了信息,以至于它不会向DGV返回任何信息,或者我是否做了其他错误的事情 我试图做的是根据从DataTable传入的信息查询另一个表。我的问题是: v
var query = (from id in IncomingOrderDetails.AsEnumerable()
from o in db.Orders
from c in db.Customers
from r in db.Regions
where (id.Field<int>("OrderID") == o.OrderID)
where (o.CustomerID == c.CustomerID)
where (c.Region == r.RegionDescription)
select new
{
CustomerID = c.CustomerID,
CompanyName = c.CompanyName,
ContactName = c.ContactName,
RegionDescription = r.RegionDescription,
Country = c.Country,
Phone = c.Phone
}).ToList();
custInfoDGV.DataSource = query;
var query=(来自IncomingOrderDetails.AsEnumerable()中的id)
以db.订单形式从o开始
来自数据库中的c
从r到db.区域
其中(id.Field(“OrderID”)==o.OrderID)
其中(o.CustomerID==c.CustomerID)
其中(c.Region==r.RegionDescription)
选择新的
{
CustomerID=c.CustomerID,
CompanyName=c.CompanyName,
ContactName=c.ContactName,
RegionDescription=r.RegionDescription,
国家,国家,
电话
}).ToList();
custInfoDGV.DataSource=查询;
此行:
where (c.Region == r.RegionDescription)
…看起来可疑。如果c.Region=r.RegionDescription
,为什么需要引入r
?您所使用的只是检索RegionDescription
我不知道您的表,但是连接两个不匹配的字段肯定会产生0条返回的记录。:) 调试时的var查询是否为空?抱歉,我遇到了internet问题。该值返回null。进行了一些调整,认为我发现了问题。基本错误是“列'OrderID'不属于表”。我还可以补充一点,我使用的是臭名昭著的Northwind数据库。问题已解决。未传入OrderID,因此无法访问它。谢谢你帮助大家:D