发布FormViewModel整个SelectList

时间:2017-06-21 22:01:17

标签: asp.net-mvc asp.net-mvc-4 asp.net-mvc-5

我的帖子创建控制器操作有问题。 我使用FormViewModel作为操作参数,但它包含一个没有值(null)的SelectList属性。 我想知道是否可以绑定整个SelectList并在我的action参数中接收它的值。 FormViewModel中的其他属性(如int,string等)已正确填充。

public class ClienteFormViewModel
{
    public SelectList Routes { get; set; }
    ...

[HttpPost]
public ActionResult Create(ClientFormViewModel clientForm)
{
    clientForm.Routes //I'd like to have the SelectList but is null
    ...

@Html.DropDownListFor(model => model.Client.route, Model.Routes, new { @class = "form-control" })

我还试图做一个自定义模型绑定器(我不知道它是否正确)所以我为Routes属性创建了一个隐藏属性,我和#39;我试图在模型绑定器中读取它,但我只是得到System.Web.Mvc.SelectList而不是所需的对象。

@Html.HiddenFor(model => model.Routes)

request.Form.Get("Routes")  //"System.Web.Mvc.SelectList"   string

请注意,模型绑定器解决方案中的控制器Create Action如下:

    public ActionResult Create([ModelBinder(typeof(ModelBinders.ClientCustomDataBinder))] ClientFormViewModel clientForm)

0 个答案:

没有答案