Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/326.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
C# 合并三个查询_C#_Linq - Fatal编程技术网

C# 合并三个查询

C# 合并三个查询,c#,linq,C#,Linq,如何将这3个查询组合在一起并作为datatable返回: 1: var-TDD=0; var queryTDD=(从db.GetAll()中的x开始) 在db.GetAll()中加入y x.PO_ID等于y.Contract_ID 选择新的 { TDD=x.应付款, }); 2: 十进制ToDateToDatePayment=0; TotalToDatePayment=((从db.GetAll()中的ori) 在db.GetAll()中加入ctm 在ori.CTMSysID上等于ctm.CTM

如何将这3个查询组合在一起并作为datatable返回:

1:
var-TDD=0;
var queryTDD=(从db.GetAll()中的x开始)
在db.GetAll()中加入y
x.PO_ID等于y.Contract_ID
选择新的
{
TDD=x.应付款,
});
2:
十进制ToDateToDatePayment=0;
TotalToDatePayment=((从db.GetAll()中的ori)
在db.GetAll()中加入ctm
在ori.CTMSysID上等于ctm.CTMSysID
选择ori.ExB4Taxes).Sum();
三:
var query=from ctm in db.GetAll()
在db.GetAll()中加入vnm
在ctm.VendSysID上等于vnm.VendSysID
其中ctm.WONOs==workOrder&&ctm.TransType==“采购订单”
选择新的
{
ctm.CTMSysID,
ctm.合同编号,
ctm.VNM_ID}`

感谢您的帮助,因为每个查询都有不同的结果,并且使用不同的列和条件。

这是不可能的


组合这些查询没有任何意义……………

组合这些查询的目的是什么?我甚至不知道你的意思。我甚至不知道第一个查询应该做什么,使用未使用的
TDD
变量…还有,你刚才不是问过这个问题吗?确切地嗯,可以将它们“组合”到一组LINQ语句中,但是正如您所注意到的,它没有任何意义!这只会使事情复杂化,并可能使性能变得糟糕。
var TDD = 0;
                var queryTDD = (from x in db.GetAll<WMINO>()
                                 join y in db.GetAll<WMCTM>()
                                 on x.PO_ID equals y.Contract_ID
                                 select new
                                 {
                                     TDD = x.Payable,
                                 });
 Decimal TotalToDatePayable = 0;
            TotalToDatePayable = ((from ori in db.GetAll<WMPORI>()
                                      join ctm in db.GetAll<WMCTM>()
                                      on ori.CTMSysID equals ctm.CTMSysID
                                      select ori.ExB4Taxes).Sum());     
  var query = from ctm in db.GetAll<WMCTM>()
                        join vnm in db.GetAll<WMVNM>()
                        on ctm.VendSysID equals vnm.VendSysID
                        where ctm.WONOs == workOrder && ctm.TransType == "Purchase Order"


select new
                            {
                                ctm.CTMSysID,
                                ctm.Contract_ID,
                                ctm.VNM_ID};`