2017-07-16 48 views
0

選擇這樣的查詢:mvc5創建新的查詢

var data = db.tableone.Where(a => a.type == 1).Select(u => new {id = u.id, type = u.type,newcolumnnotexistindatabase = "test"}); 
return data.ToList(); 

同時有5列由1類型,它應該顯示我在列表

id, type -- newcolumnnotexistindatabase 
1 , 1 --test 
2 , 1 --test 
3 , 1 --test 
4 , 1 --test 
5 , 1 --test 

ERORR:

不能隱式轉換類型'System.Collections.Generic.List < <

+0

你能寫出完整的異常詳細信息嗎? – Natiq

+0

,同時以的形式返回它錯誤寫入 – zomham

+0

它看起來像是查詢所屬方法的返回類型的問題。沒有完整的方法**返回類型**,您將無法獲得任何幫助。 –

回答

1

問題是,你不能返回匿名類型。如果你的函數的返回類型是List<<AnyClass>>,你的linq查詢應該是這樣的:

var data = db.tableone 
    .Where(a => a.type == 1) 
    .Select(u => new AnyClass 
     { 
     id = u.id, 
     type = u.type, 
     newcolumnnotexistindatabase = "test" 
     }); 
return data.ToList(); 
+0

。Select(u => new AnyClass,--AnyClass--是紅線(錯誤) – zomham

+0

我爲它寫了這個例子** AnyClass **可以是任何你想要的名字的類,你應該創建一個自定義類有三個屬性(Id,Type,Newcolumnnotexistindatabase)。 – Natiq