MVC Razor从带有FormCollection的select中获取选项值

Lor*_*ion 10 html asp.net-mvc select formcollection razor

我的视图在我的ViewModel中有一个Select with elements(选项).

        @using (Html.BeginForm("NewUser", "Admin"))
        {
             <select multiple="" id="inputRole" class="form-control" size="6" name="inputRole">
             @foreach (var item in Model.roller)
             {
                 <option>@item.Name</option>
             }
             </select>
         }
Run Code Online (Sandbox Code Playgroud)

如何在Controller中获取所选值?

    [HttpPost]
    public ActionResult NewUser(FormCollection formCollection)
    {
        String roleValue1 = formCollection.Get("inputRole");
    }
Run Code Online (Sandbox Code Playgroud)

这给了我一个空值.

Nit*_*rpe 20

试试这个来获取formcollection中的控制值

formCollection["inputRole"]
Run Code Online (Sandbox Code Playgroud)

你的代码变成了

[HttpPost]
    public ActionResult NewUser(FormCollection formCollection)
    {
        String roleValue1 = formCollection["inputRole"];
    }
Run Code Online (Sandbox Code Playgroud)


小智 6

您可以通过它的名称以这种方式访问​​您的表单字段

    String role = formCollection["inputRole"];
Run Code Online (Sandbox Code Playgroud)