2009-11-12 79 views
0

我有一個基本的SQL表(pKey INT, TransDate smallDateTime, Amount Float) 我只是想模仿這個SQL在LINQ新手LINQ語法問題

SELECT SUM(Amount) AS result 
FROM dbo.Basic 
WHERE TransDate >= @startDate 
AND TransDate <= @EndDate 

我創建了LINQ的dbml對於這一點,我可以得到一個日期範圍基本查詢結果

但是我無法找到正確的語法拿到過一個日期範圍的總和,我試過幾個變化以下,但他們要麼不編譯或他們給出的結果不能被轉換爲雙

BasicDataContext dContext = new BasicDataContext(); 
var lnq = from c in dContext.Basic 
     where c.TransDate >= startdate && 
      c.TransDate <= enddate 
     select new { total = c.Sum(Amount) }; 

double result = (double)lnq.total; 
+0

另一個祕訣:使用LINQ時,你幾乎從來沒有投什麼。 – Kobi 2009-11-12 14:13:26

+0

非常感謝Kobi – 2009-11-12 14:18:51

回答

2

這應該工作:

double result = (from c in dContext.Basic 
        where c.TransDate >= startdate && 
         c.TransDate <= enddate 
        select c.Amount).Sum();