簡體   English   中英

ASP.NET MVC表單模型

[英]ASP.NET MVC Form Models

我有一個包含類似於以下內容的行的表單:

@model  Models.Group

@using (Html.BeginForm("Test", "CreateGroup", FormMethod.Post))
{
<form method="post">

<div class="row" id="user2">
    <div class="col-md-3">
        @Html.TextBoxFor(m => m.UserName_2, new { @class = "form-control" })

    </div>
    <div class="col-md-3">
        @Html.TextBoxFor(m => m.UserEmail_2, new { @class = "form-control", @type = "email" })
    </div>
</div>
<div class="col-md-12">
    &nbsp;
</div>
<div class="row" id="user3">
    <div class="col-md-3">
        @Html.TextBoxFor(m => m.UserName_3, new { @class = "form-control" })

    </div>
    <div class="col-md-3">
        @Html.TextBoxFor(m => m.UserEmail_3, new { @class = "form-control", @type = "email" })
    </div>
</div>
<div class="row">
   <div class="col-md-12">
      <button type="submit" class="btn btn-success btn-lg margin-right">
      <span class="glyphicon glyphicon-save"></span> Save
      </button>
   </div>
  </div>
</form>
}

使用當前看起來像這樣的模型:

public class Group
{
    public int Id { get; set; }

    public string UserName_2 { get; set; }

    public string UserEmail_2 { get; set; }

    public string UserName_3 { get; set; }

    public string UserEmail_3 { get; set; }
}

如何使我的View支持類似這樣的功能,使我能夠添加更多用戶而不必將值硬編碼到我的Group模型中:

public class Group
{
    public int Id { get; set; }

    public List<User> Users { get; set; }
}

public class User
{
    public string Name { get; set; }

    public string Email { get; set; }
}

編輯:或者比使用模型有更好的方法將信息從表單發送到控制器? 我正在嘗試使用FormCollection,但提交時似乎沒有任何數據

嘗試按索引訪問用戶,模型綁定應將其選中。 代碼如下所示:

@for(int i = 0; i < Model.Users.Length; i++)
{
<div class="row">
    <div class="col-md-3">
        @Html.TextBoxFor(m => Model.Users[i].Name, new { @class = "form-control" })

    </div>
    <div class="col-md-3">
        @Html.TextBoxFor(m => Model.Users[i].Email, new { @class = "form-control", @type = "email" })
    </div>
</div>
}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM