数据表 - 可配置的查询
本文关键字:查询 配置 数据表 | 更新日期: 2023-09-27 18:31:16
我从两个不同的来源收集了数据,例如:在线资源和本地数据库。来自这些源的结果都存储在各自的System.Data.DataTable
对象(平面结构)中。
我希望能够使用可以在 App.Config 中配置的联接查询来查询这些源。如何做到这一点?
DataTable
dtPublicCompanyBlacklist
包含以下列:
id
name
DataTable
dtMyCompanyCustomerSource
包含以下列:
id
salesTotal
e-mail
我希望能够写出类似以下内容的内容(如string
):
select a.name, b.salesTotal, b.e-mail
from dtPublicCompanyBlacklist a, dtMyCompanyCustomerSource b
where a.id = b.id
应用程序的用户应该能够修改查询,而无需重新编译源代码。我还没有发现Linq可以这样使用。
请找到下面的示例。您可以使用 linq 查询来做到这一点。
var result = from dataRows1 in table1.AsEnumerable()
join dataRows2 in table2.AsEnumerable()
on dataRows1.Field<string>("ID") equals dataRows2.Field<string>("ID")
select dtResult.LoadDataRow(new object[]
{
dataRows1.Field<string>("ID"),
dataRows1.Field<string>("name"),
dataRows2.Field<int>("stock")
}, false);