我想創建一個使用剃刀模板的視圖,但我不想爲模型編寫一個類,因爲在很多視圖中,我將有許多查詢將返回不同的模型。具有匿名類型模型類的剃鬚刀視圖。有可能的?
比如我有一個LINQ查詢:
from p in db.Articles.Where(p => p.user_id == 2)
select new
{
p.article_id,
p.title,
p.date,
p.category,
/* Additional parameters which arent in Article model */
};
我需要寫這個查詢視圖。這個查詢返回一個Articles。
現在我不知道應該如何看起來像一個模型定義。
我試圖用這個deffinition:
@model System.Collections.IEnumerable
但後來我有一個錯誤回報比犯規存在於對象類型的Fileds:
* CS1061:「對象」不包含定義「addition_field '並且沒有擴展方法'addition_field'接受類型'object'的第一個參數可以被發現*
這是我不想寫下一個模型的模型。當然
'@model System.Collections.IEnumerable' –
該查詢似乎投射'匿名類型的IEnumerable',而不是'Article' –
你能解釋一下爲什麼你不想寫一個模型嗎?使用模型類有一些優點 - 例如您可以使用智能感知,您可以更多地使用部分類,並可以爲模型類添加驗證等屬性。 – Stuart