猿问

.Net MVC 模型接收参数问题

Html:

<form action="/Test/save" method="post">
    <!--省略其他字段-->
    <input type="text" name="value" />
    <input type="text" name="value" />
    <input type="text" name="value" />
    <!--有可能有更多的name为value的input-->
    <input type="submit" value="submit" /></form>

 

接收模型:

    public class Test
    {        //省略其他字段
        public string value { get; set; }
    }

 

控制器:


    public class TestController : Controller
    {        public ActionResult Save(Test test)
        {            var collection = new FormCollection(Request.Form);            return View();
        }
    }



假设我的页面上有3个input,值分别是1,2,3。

在控制器的Save方法中

 Test.value 的值是"1",但是在 collection["value"] 的值就是"1,2,3"

 

我的预期结果是后者。能不能让模型中接收到的值直接是后者?


九州编程
浏览 514回答 1
1回答

幕布斯6054654

正确的姿势叫做模型绑定器&nbsp;ModelBinder&nbsp;。[MVC]自定义模型绑定器,从表单对模型进行赋值
随时随地看视频慕课网APP
我要回答