これは私のモデルです:
public class MyModel
{
public List<long> NeededIds { get; set; }
public string Name { get; set; }
}
私のコントローラー:
public ActionResult Create()
{
MyModel model = new MyModel();
model.NeededIds = new List<long> { 1, 2, 3, 4 };
return View(model);
}
[HttpPost]
public ActionResult Create(MyModel model)
{
string name = model.Name;
List<long> ids = model.NeededIds;
return RedirectToAction("Index");
}
そして見る:
@model TestMVC.Models.MyModel
@using(Html.BeginForm()) {
<table>
<thead>
<tr>
<th>
Id
</th>
</tr>
</thead>
<tbody>
@foreach(long id in Model.NeededIds) {
<tr>
<td>
@id
</td>
</tr>
}
</tbody>
</table>
@Html.ValidationSummary(true)
<fieldset>
<legend>MyModel</legend>
<div class="editor-label">
@Html.LabelFor(model => model.Name)
</div>
<div class="editor-field">
@Html.EditorFor(model => model.Name)
@Html.ValidationMessageFor(model => model.Name)
</div>
<p>
<input type="submit" value="Create" />
</p>
</fieldset>
}
NeededIds
Get actionを設定すると、ビューに表示されますNeededIds
。ポストアクションでも必要ですが、ポストアクションでNeededIds
は常にnullです。get actionで設定した場合、post actionでプロパティ値を取得するにはどうすればよいですか?あなたの提案は何ですか?