1
我有以下視圖模型:ICollection的顯示爲空,並在控制器(MVC4)不是空
namespace Flashcard.Models
{
public class CreateCardViewModel
{
[HiddenInput(DisplayValue = false)]
public int SetId { get; set; }
[Required]
public ICollection<Side> Sides { get; set; }
}
}
我來對付卡控制器此視圖模型:
public class CardController : Controller
{
//
// GET: /Card/
public ActionResult Create(int setId)
{
var model = new CreateCardViewModel();
var side = new Side() {Content = "Blank Side"};
model.SetId = setId;
model.Sides.Add(side);
return View(model);
}
}
然而,當我調用Create動作,我得到一個nullReferenceException,因爲model.Sides是null,它看起來不像空。我相信我在ViewModel中創建了一個空的ICollection Sides - 爲什麼它在控制器中爲空?
對於某些情況 - 卡可以有一個或幾個邊。每當創建一張卡時,我總是試圖添加一個Side。