Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/vb.net/14.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Asp.net 两个查询的合并结果_Asp.net_Vb.net_Linq - Fatal编程技术网

Asp.net 两个查询的合并结果

Asp.net 两个查询的合并结果,asp.net,vb.net,linq,Asp.net,Vb.net,Linq,我提出两个问题: 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{

我提出两个问题:

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})

如果希望得到不同的结果,如何合并这两个查询,使其只有一个可用作
数据源

使用
不同的

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


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

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


试试这样的

   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})

试试这样的

   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})

使用
Union
,它可以提供预期的结果


请查看提供预期结果的使用
Union


看一看

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


希望这有帮助

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


希望这有帮助

workers表和clients表之间是否存在任何关系(如外键)?不,这只是我想添加到另一个表中的查询。如果您仍然存在一些问题,请使用更多代码和场景更新帖子。所以我们可以帮助你。workers和clients表之间是否有任何关系(比如外键)?不,这只是我想添加到另一个表中的一个查询。如果你仍然有一些问题,然后用更多的代码和场景更新帖子。所以我们可以帮你。我很确定他想加入这些询问。我不会投你反对票,因为他的问题模棱两可。这是一个编辑。康卡特,对,是一种联接^ ^ ^ ^有一段时间没有联接,因为两个linq结果中的属性都相同,并且没有一列看起来像联接这两个结果的主键。@Romil:如果工作者和客户端没有相同的列,这会起作用吗?如果两个结果的数据类型和列数都不相同,那么union和合并是不可能的。@Romil:当然,那么你必须在回答中提到这一点,因为这并不适用于所有情况!!!我很确定他想加入这些质疑。我不会投你反对票,因为他的问题模棱两可。这是一个编辑。康卡特,对,是一种联接^ ^ ^ ^有一段时间没有联接,因为两个linq结果中的属性都相同,并且没有一列看起来像联接这两个结果的主键。@Romil:如果工作者和客户端没有相同的列,这会起作用吗?如果两个结果的数据类型和列数都不相同,那么union和合并是不可能的。@Romil:当然,那么你必须在回答中提到这一点,因为这并不适用于所有情况!!!我以为它会成功,但它无法将System.Data.Linq.DataQuery`强制转换为System.Collections.Generic.IEnumerable。。。有什么想法吗?我以为它会成功,但它无法将System.Data.Linq.DataQuery`强制转换为System.Collections.Generic.IEnumerable。。。有什么想法吗?