MVC Modelbinding,其属性为ICollection

时间:2017-07-01 17:18:44

标签: c# asp.net-mvc forms razor

我正在尝试创建一个用于创建新实体的表单。为此,我有我的viewmodel,并且viewmodel包含属性ICollection:

public class AdminViewModel
{
    public Article Article { get; set; }
    public List<Article> Articles { get; set; }
}

public class Article
{
    public Article()
    {
        Prices = new List<Price>();
    }
    [Column("Id")]
    public int ArticleId { get; set; }
    public string ArticleNumber { get; set; }
    public string Name { get; set; }
    public string Description { get; set; }
    public virtual ICollection<Category> Category { get; set; }
    public virtual ICollection<Price> Prices { get; set; }
}

这是我要发布的控制器:

public ActionResult CreateProduct(Article article)
{         
    return View();
}

问题:

我使用带有razor的html帮助器在我的表单中生成输入,如下所示:

@Html.TextBoxFor(t => t.Article.Category, new { @class = "form-control" }))

模型中的所有属性都从表单中获取正确的值,但不是上面的ICollection。

我已经阅读了很多关于这个主题的博客和文章,但是大多数只讨论了如何在模型填充数据时进行处理,而不是在空白时,或者想要发布完整集合的示例item而不是ONE项目包含一个集合。

0 个答案:

没有答案