私はこれをしばらく研究してきましたので、どこかでトピックを見逃した場合は、正しい方向に向けて謝罪を受け入れてください。
着信DataTableでLINQクエリを実行し、実行されたフィルタリングに基づいて新しい列を設定しています。渡される情報は、CompanyName、CustomerID、LastName、FirstName、ContactTitleの列を含む単一の行です。
私の質問は、情報がDGVに何も返さないところまで情報を過剰にフィルタリングしているのか、それとも何か間違ったことをしているのかということです。
私がやろうとしているのは、DataTableから渡された情報に基づいて別のテーブルをクエリすることです。これが私の質問です:
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;