名前、電子メールなどのプロパティを持つモデルがあります。コレクションもあります。ビューでプロパティを編集し、コレクションを変更しないままにしました。
フォームを送信しようとすると、変更された値と変更されていない値が送信されますが、コレクションは失われます。これをどのように処理しますか?
HTML.HiddenFor()
- 機能しません。
フォームで変更されていないすべてのプロパティを失います !(私が使用するフォームでHTML.EditorFor(Model => Model.Name)
)
編集: 表示:
<% using (Html.BeginForm("Action", "Controller", FormMethod.Post))
{%>
<%: Html.AntiForgeryToken()%>
<table>
<tr>
<td>Name: </td>
<td>
<%: Html.EditorFor(Model => Model.Name) %></td>
</tr>
<tr>
<td>Phone: </td>
<td>
<%: Html.EditorFor(Model => Model.Phone) %></td>
</tr>
@h@</table>
<%} %>
コントローラ
[HttpPost]
[ValidateAntiForgeryToken]
public ActionResult SaveModelDealer(User ModelReceived)
{
try
{
if (ModelState.IsValid)
{
using (Context db = new Context ())
{
System.Diagnostics.Debug.WriteLine(" " + ModelReceived.ListOfPhones.Count);
}
return View();
}
else
{
}
}
catch (Exception)
{
}
}