2014-11-25 82 views
-1

我有這樣的LINQ查詢我運行一個搜索功能(DateFrom和DateTo是datetime對象):LINQ查詢聯接表

var result = from x in DbContext.Transaction_Groups 
where (x.Date_Created >= DateFrom && x.Date_Created <= DateTo) 
select x; 

這些都是我的表:

enter image description here

我試圖將這兩張表加在一起,以便我可以使用.Transaction_Date_Time而不是我查詢中的.Date_Created function

我的查詢試圖確定DateFrom(用戶選擇的值)和DateTo(另一個用戶選擇的值)之間的所有行。

+1

[加入例子的LINQ(http://www.dotnetperls.com/join) – MethodMan 2014-11-25 13:36:06

回答

1

你想通過Group_ID加入嗎?

var result = from x in DbContext.Transaction_Groups 
join tran in DbContext.CashDeposit on x.Group_ID equals tran.Group_ID 
where (tran.Transaction_Date_Time >= DateFrom && tran.Transaction_Date_Time <= DateTo) 
select tran; 
+0

我真的覺得很奇怪給一個表的名稱是其他表的起始的變量。事實上,它很混亂,就像使用單字母變量一樣。 – Nzall 2014-11-25 13:39:34

1
var result = from transgroup in DbContext.Transaction_Groups 
      join cashDep in DbContext.CashDeposit 
      on transgroup.Group_ID equals cashDep.Group_ID 
      where (cashDep.Transaction_Date_Time >= DateFrom 
        && cashDep.Transaction_Date_Time <= DateTo) 
      select transgroup 

未經測試,但應該工作。爲了清晰起見,縮進。