情景如下:做一新聞查詢(根據(jù)新聞分類CategoryID),using(var con = new Context()){ //do}如果分類為0,那么查詢?nèi)?,如果分類不?,那么就根據(jù)分類去查詢。1、var news = db.news;2、var news = db.news.where(n=>n.cateid=categoryid).tolist() 三個問題,1、如何將2個查詢合并為一個方法,使用參數(shù)去區(qū)分。2、如果根據(jù)參數(shù)去匹配,是否是像這個寫法:var news = db.newsif(cateid!=0){ news = news.where(n=>n.cateid=categoryid).tolist()}3、這種情況下,if之前的語句是否是查詢所有數(shù)據(jù),我這里想要問的是,EF是在什么時候去數(shù)據(jù)庫里邊查數(shù)據(jù),我擔(dān)心 在 if之前它會先去查詢所有匹配數(shù)據(jù),然后到if里邊再去篩選,這樣會影響性能。
2 回答

滄海一幻覺
TA貢獻(xiàn)1824條經(jīng)驗 獲得超5個贊
在為實體寫的Service里可以用方法重載來解決函數(shù)多簽名的問題。一般情況下linq查詢數(shù)據(jù)集,不是即時加載的。
- 2 回答
- 0 關(guān)注
- 911 瀏覽
添加回答
舉報
0/150
提交
取消