2013-10-10 4 views
0
select sr.Name as Sale_Rep,ag.Name as Agent , 
     sum(tr.Amount) Debit_tran 
    from DebtorTransactions as tr 
     join Warranty as wr on tr.ProductID=wr.Id 
     join Agents as ag on ag.pkfAgentID=wr.fldAgentID 
     join SalesReps as sr on wr.fldSrId =sr.pkfSrID 
    where tr.Product=0 
    group by ag.Name, sr.Name 

я хочу, чтобы преобразовать этот запрос в Linq к Entity, но не может ... может кто-нибудь преобразовать этот запрос в Linq к сущности для меня плзкак преобразовать sql-запрос в linq к запросу сущности?

Это то, что я пробовал:

var abc= from tr in db.DebtorTransactions 
     from wr in db.Warranties 
     from sr in db.SalesReps 
     from ag in db.Agents 
     where tr.ProductID==wr.Id 
      && ag.pkfAgentID==wr.fldAgentID 
      && wr.fldSrId ==sr.pkfSrID 
      && tr.Product==0 
     select new { ag.Name, sr.Name, tr.Amount }; 

Но я не получаю никакого вывода

+0

вар ABC = от тра в db.DebtorTransactions из сог в db.Warranties из стерад в db.SalesReps из ая в db.Agents , где tr.ProductID == wr.Id && ag.pkfAgentID = = wr.fldAgentID && wr.fldSrId == sr.pkfSrID && tr.Product == 0 выбрать новый { ag.Name, sr.Name, tr.Amount }; –

+0

Я пробовал это ... но я не получаю никакого результата ... PLZ помочь мне –

ответ

0
var abc = from tr in db.DebtorTransactions 
      join wr in db.Warranties tr.ProductID equals wr.Id 
      join sr in db.SalesReps wr.fldSrId equals sr.pkfSrID 
      join ag in db.Agents wr.fldAgentID equals ag.pkfAgentID 
      where tr.Product==0 
      select new { ag.Name, sr.Name, tr.Amount }; 
1

чтобы соответствовать вашему SQL запроса вам нужно сгруппировать те же колонки:

from tr in db.DebtorTransactions 
join wr in db.Warranties on tr.ProductID equals wr.Id 
join ag in db.Agents on wr.fldAgentID equals ag.pkfAgentID 
join sr in db.SalesReps on wr.fldSrId equals sr.pkfSrID 
group tr 
    by new { Sale_Rep = sr.Name, Agent = ag.Name } 
    into transactions 
select new { 
    transactions.Key.Sale_Rep, 
    transactions.Key.Agent, 
    Debit_tran = transactions.Sum(tr => tr.Amount) 
} 
Смежные вопросы