0

我正在做两个查询:

Dim worker = (From p in db.workers where p.dateAdded > today 
                   select new with{.name = p.name, .desc = p.description})

Dim client = (From p in db.clients where p.dateAdded > today 
                   select new with{.name = p.name, .desc = p.description})

如何将这两个查询合并为只有一个可以用作DataSource.

4

4 回答 4

2

尝试这样的事情

   Dim Merged = (From p in db.workers where p.dateAdded > today 
                       select new with{.name = p.name, .desc = p.description})
                 .Union
                 (From p in db.clients where p.dateAdded > today 
                       select new with{.name = p.name, .desc = p.description})
于 2012-05-18T11:07:25.340 回答
1

Distinct如果想获得不同的结果,请使用。

var merged = worker.Concat(client).Distinct();

或者

var mergedList = worker.Union(client).ToList();
于 2012-05-18T11:02:20.063 回答
0

你能具体说明你想要做什么吗?
1. 将结果合并到一组中 - 如果是,您可以使用huMpty duMpty 的建议
2. 如果您想使用两个带有 Linq 查询的 DataTable 执行类似于 DataSet 的操作,我不确定这是否可以实现。

希望这可以帮助!

于 2012-05-18T14:09:26.833 回答
0

使用Union可以提供您预期的结果。

看看返回两个序列的集合并集(LINQ to SQL)

于 2012-05-18T12:13:59.503 回答