我想在我的項目(ASP.Net,C#)中創建一個簡單的報表生成器。我要低於我可以LINQ查詢或SQL查詢實現這些期貨:在報表生成器中使用動態linq或sql查詢
最終用戶(誰沒有編程信息)選擇從
Dropdown
實體名稱。
LINQ查詢
dbContext.dbSet
SQL查詢從checklistbox
實體的
SELECT * FROM selectedTable
最終用戶選擇字段(這些用於結合
GridView
字段 )。爲其中的每一個創建TextBoxes
。 最終用戶稍後輸入過濾網格的值。
LINQ查詢
創建所選字段的自定義where clause
作爲customExpression
,並使用它下面的查詢。
dbContext.dbSet.Where(customExpression).ToList()
SQL查詢
SELECT * FROM selectedTable
WHERE CustomWhereCondition
我曾經在我以前的項目SQL查詢但我傾向於在新項目中使用LINQ查詢。 dynamic Where conditions
可能在未來開發,可能我不能在linq query
或更難Sql query
。 我懷疑使用什麼方法。
如果有人能解釋哪種方法更適合我的項目,那將會非常有幫助。
Thx for answer。我知道我可以通過'linq'完成的方法。我的問題是哪一個更好?爲什麼? –
您可以使用上述方法爲簡單查詢生成自定義表達式。這將有助於您的表現,以及您不會獲取所有記錄,然後應用條件。表達式樹在內部生成sql查詢。它最終歸結爲代碼可維護性。如果你可以在你的代碼中對sql語句進行硬編碼,你可以通過編寫你自己的sql語句來解決它。 –