控制器動作:不是強類型的視圖問題
public ActionResult Index()
{
probaEntities proba = new probaEntities();
probaEntities proba1 = new probaEntities();
probaEntities proba2 = new probaEntities();
var query = from i in proba.name
from j in proba1.id_person
from k in proba2.last_name
select new
{
i.ime,
j.id,
k.prezime
};
return View(query);
}
查看網頁:
<table>
<tr>
<th>
ime
</th>
<th>
broj
</th>
<th>
prezime
</th>
</tr>
<% foreach (var item in Model) { %>
<tr>
<td>
<%= Html.Encode(item.name) %>
</td>
<td>
<%= Html.Encode(item.id_person)%>
</td>
<td>
<%= Html.Encode(item.last_name)%>
</td>
</tr>
<% } %>
</table>
如何才能在繼承=寫 「???」 ?這個視圖不是強類型的,因爲我有3個表格向他發佈數據。我是否必須爲這個觀點制定一個特殊的模型,是否有一個較短的解決方案?
在這種情況下,我有這個錯誤:foreach語句不能對'object'類型的變量進行操作,因爲'object'不包含'GetEnumerator'的公共定義 – Ognjen 2010-04-26 18:17:21
如果你想枚舉,你可以創建自己的類代表您的數據模型並實現IEnumerable。然後你會使用'Inherits =「System.Web.Mvc.ViewPage」',將它從控制器傳遞到視圖中。 –
RedFilter
2010-04-26 18:20:43
當我編寫<%@ Page Title =「」Language =「C#」Inherits =「System.Web.Mvc.ViewPage」%>時,我可以這樣做,而不需要我自己的班級代表數據模型 – Ognjen 2010-04-26 18:23:40