在一个中继器中加入两个导航网络服务数据
join two Nav web services data in one repeater
我正在尝试使用 Linq 查询连接两个导航 Web 服务数据。但是我怎么办呢。我的代码是 below.Suppose 我有客户详细信息及其发票 Web 服务。我想要这个细节 page.Please 给我解决方案。
public void bindEmpCustInvoice(string strCusCode)
{
List<Customer_Card_Filter> cardFilter = new List<Customer_Card_Filter>();
Customer_Card_Filter cardField = new Customer_Card_Filter();
cardFilter.Add(cardField);
Customer_Card[] cardList = cls.wsCustomerCard.ReadMultiple(cardFilter.ToArray(), null, 3);
RptEmpCustInvoise.DataSource = cardList;
RptEmpCustInvoise.DataBind();
decimal decValue = 0.00m;
List<Customer_Statistics_Bill_to_Customer_Filter> cFilter = new List<Customer_Statistics_Bill_to_Customer_Filter>();
Customer_Statistics_Bill_to_Customer_Filter cField = new Customer_Statistics_Bill_to_Customer_Filter();
cFilter.Add(cField);
Customer_Statistics_Bill_to_Customer[] billList = cls.wsCustBillService.ReadMultiple(decValue, decValue, decValue, decValue, cFilter.ToArray(), null, 3);
RptEmpCustInvoise.DataSource = billList;
RptEmpCustInvoise.DataBind();
var q = (from cd in cardList
join bd in billList on cd.No equals bd.No
orderby cd.No
select new
{
cd.No,
cd.Name,
cd.Contact,
cd.Phone_No,
cd.City,
bd.Balance_LCY,
bd.Outstanding_Orders_LCY,
bd.Shipped_Not_Invoiced_LCY,
bd.Outstanding_Invoices_LCY,
bd.Outstanding_Serv_Orders_LCY,
bd.Serv_Shipped_Not_Invoiced_LCY,
bd.Outstanding_Serv_Invoices_LCY
}).ToArray();
}
通过研究,我找到了将 linq 结果绑定到数据源的解决方案。如下代码。
public void bindEmpCustInvoice(string strCusCode)
{
try
{
Customer_Card[] cardList = cls.wsCustomerCard.ReadMultiple(null, null, 999999); Customer_Ledger_Entries[] billList = cls.wsCustInvoice.ReadMultiple(null,null,99999);
var q = (from cd in cardList
join bd in billList on cd.No equals bd.Customer_No
orderby cd.No
select new
{
cd.No,
cd.Name,
cd.Contact,
cd.Phone_No,
cd.City,
bd.Amount });
RptEmpCustInvoise.DataSource = q.ToList();
RptEmpCustInvoise.DataBind();
}
catch { throw; }
}
我正在尝试使用 Linq 查询连接两个导航 Web 服务数据。但是我怎么办呢。我的代码是 below.Suppose 我有客户详细信息及其发票 Web 服务。我想要这个细节 page.Please 给我解决方案。
public void bindEmpCustInvoice(string strCusCode)
{
List<Customer_Card_Filter> cardFilter = new List<Customer_Card_Filter>();
Customer_Card_Filter cardField = new Customer_Card_Filter();
cardFilter.Add(cardField);
Customer_Card[] cardList = cls.wsCustomerCard.ReadMultiple(cardFilter.ToArray(), null, 3);
RptEmpCustInvoise.DataSource = cardList;
RptEmpCustInvoise.DataBind();
decimal decValue = 0.00m;
List<Customer_Statistics_Bill_to_Customer_Filter> cFilter = new List<Customer_Statistics_Bill_to_Customer_Filter>();
Customer_Statistics_Bill_to_Customer_Filter cField = new Customer_Statistics_Bill_to_Customer_Filter();
cFilter.Add(cField);
Customer_Statistics_Bill_to_Customer[] billList = cls.wsCustBillService.ReadMultiple(decValue, decValue, decValue, decValue, cFilter.ToArray(), null, 3);
RptEmpCustInvoise.DataSource = billList;
RptEmpCustInvoise.DataBind();
var q = (from cd in cardList
join bd in billList on cd.No equals bd.No
orderby cd.No
select new
{
cd.No,
cd.Name,
cd.Contact,
cd.Phone_No,
cd.City,
bd.Balance_LCY,
bd.Outstanding_Orders_LCY,
bd.Shipped_Not_Invoiced_LCY,
bd.Outstanding_Invoices_LCY,
bd.Outstanding_Serv_Orders_LCY,
bd.Serv_Shipped_Not_Invoiced_LCY,
bd.Outstanding_Serv_Invoices_LCY
}).ToArray();
}
通过研究,我找到了将 linq 结果绑定到数据源的解决方案。如下代码。
public void bindEmpCustInvoice(string strCusCode)
{
try
{
Customer_Card[] cardList = cls.wsCustomerCard.ReadMultiple(null, null, 999999); Customer_Ledger_Entries[] billList = cls.wsCustInvoice.ReadMultiple(null,null,99999);
var q = (from cd in cardList
join bd in billList on cd.No equals bd.Customer_No
orderby cd.No
select new
{
cd.No,
cd.Name,
cd.Contact,
cd.Phone_No,
cd.City,
bd.Amount });
RptEmpCustInvoise.DataSource = q.ToList();
RptEmpCustInvoise.DataBind();
}
catch { throw; }
}