2010-09-06 48 views
0

我需要使用輸出參數執行SQL查詢。LINQ使用輸出參數執行SQL查詢

例如,

SELECT @Count = COUNT(*) FROM dbo.SomeTable 
SELECT * FROM SomeTable WHERE Id BETWEEN 1 AND 10 

quering後,我需要知道@count值。 如何使用LINQ而不使用存儲過程?

謝謝。

回答

1
int value = yourDB.SomeTable.Count(q=>q.id >=1 && q.id <= 10); 

LINQ是非常容易的:)


編輯:所以你要2項,計數,然後將陣列的有限的一部分。

 List<SomeTable> li = yourDB.SomeTable.ToList(); 
     int number = li.Count; 
     List<SomeTable> partial = li.GetRange(0, 10); 

 int value = yourDB.SomeTable.Count(); 
     List<SomeTable> partial = yourDB.SomeTable.ToList().GetRange(0, 10); 

所以尋呼最好的LINQ的事情是:

 List<SomeTable> partial = yourDB.SomeTable.OrderBy(q=>q.id).Skip(0).Take(10).ToList(); 
+0

我明白了,你的意思,但我必須實現分頁。它比我寫的要複雜得多 SELECT * FROM SomeTable WHERE Id BETWEEN 1 AND 10 有沒有辦法用輸出參數執行乾淨的T-SQL代碼? – SuperX 2010-09-06 11:04:28

+0

+1,這是安裝。 1和10可能是int vars。 – Jonathan 2010-09-06 11:12:11

+0

使用您的解決方案解決方案我必須對數據庫執行2個查詢,但我只想要男性。 – SuperX 2010-09-06 11:24:54