我對這裏給出的答案接受一個跟進的問題:Two models in one view in ASP MVC 3結合使用多種模型在一個視圖中
我有三個型號,種類,原因,地點,我想列出的內容在一個視圖中。基於鏈接的答案上面我做了相結合的新模式,看起來像這樣:
public class Combined
{
public IEnumerable<Place> Place { get; set; }
public IEnumerable<Type> Type { get; set; }
public IEnumerable<Cause> Cause { get; set; }
}
我把它的IEnumerable <>,因爲按照我的理解,這就是我想要的東西時,我只是想列出這些模型的內容在foreach循環中。然後我做了這個控制器的觀點:
[ChildActionOnly]
public ActionResult overSightHeadings()
{
Combined Combined = new Combined();
return View(Combined);
}
最後的觀點(我只是想從一個表的第一列):
@model mvcAvvikelser.Models.Combined
@{
Layout = null;
}
<tr>
@foreach (var Type in Model.Type)
{
<th> @Html.DisplayTextFor(ModelItem => Type.Name)</th>
}
</tr>
這段代碼的問題是,它當foreach代碼開始時拋出一個空異常。
System.NullReferenceException: Object reference not set to an instance of an object.
所以我不完全知道我在做什麼錯在這裏,豈不是一個IEnumerable,我已初始化控制器不正確的模型?
你做錯了什麼是你沒有初始化你的'Combined'屬性。列表是空的 – codingbiz