2009-08-27 106 views
3

我在將以下SQL轉換爲LINQ to SQL時遇到了很大的麻煩,任何人都可以幫忙嗎?將SQL轉換爲LINQ到SQL

SELECT  dbo.ExpensesGroup.ExpenseGroupId, dbo.ExpensesGroup.Title, SUM(dbo.Expenses.Amount) AS TotalAmount, MAX(dbo.Expenses.DateLastTickled) 
         AS LastTickledDate, MAX(dbo.ExpensesGroup.DateTime) AS Date, Username 
FROM   dbo.Expenses INNER JOIN 
         dbo.ExpensesGroup ON dbo.Expenses.ExpenseId = dbo.ExpensesGroup.ExpensesId 
WHERE  dbo.Expenses.Status = 'AwaitingApproval' or dbo.Expenses.Status = 'AwaitingApprovelGrouping' 
GROUP BY dbo.ExpensesGroup.ExpenseGroupId, dbo.ExpensesGroup.Title, dbo.Expenses.Username 
ORDER BY MAX(dbo.ExpensesGroup.DateTime) DESC, dbo.ExpensesGroup.Title 

或者甚至更好的人知道一個自動SQl到LINQ轉換器?

回答

4

請參閱this現有的線程。

如果您決定手動使用,Linqpad應該是有用的。

1

我試圖linqpad,但它不是用於轉換SQL到LINQ,但它的實際用途是使用LINQ取代SQL查詢數據庫

但是我覺得linqer是正確的選擇,如果你喜歡SQL查詢轉換爲LINQ 。 你可以從他們的官方網站下載。

http://www.sqltolinq.com/

+0

做ü知道任何免費? – Niraj

+0

答案是否定的。我沒有試圖找到太難,如果你找到一個請在那裏留下評論。謝謝 –

1

從LINQ去 - > SQL試試這個:

 var db = new DBModelDataContext(); 
     StringBuilder sb = new StringBuilder(); 
     StringWriter sw = new StringWriter(sb); 
     db.Log = sw; //set the writer 

     var items = (from rec in db.Table1 
        select rec).ToList(); 

     var sql = sb.ToString(); //here is the SQL from LINQ. 
+2

這不是回答這個問題。 –