【发布时间】:2021-10-16 20:05:35
【问题描述】:
我尝试了不同的方法,但每次更新都会复制我的模型。
我通过 HTTP POST 操作将我的视图中的人员对象传递给控制器方法,然后调用 .Update(...) 方法。
我的看法是:
@model Falcon.Models.Person
<h2>User @Model.FullName</h2>
<div>
<form method="post" class=container>
<section>
<h4>General information</h4>
<div class=row>
<div class=col-25><label asp-for=Surname></label></div>
<div class=col-75><input asp-for=Surname type="text"/></div>
</div>
<div class=row>
<div class=col-25><label asp-for=Name></label></div>
<div class=col-75><input asp-for=Name type="text"/></div>
</div>
......
<div class=row>
<div class=col-25><label asp-for=Email></label> </div>
<div class=col-75><input asp-for=Email type="email" /></div>
</div>
</section>
<input type="submit" value="Submit changes" asp-action="Edit" asp-controller="Person"/>
</form>
我PersonController的操作是:
[HttpPost]
public async Task<IActionResult> Edit (Person person)
{
db.Persons.Update(person);
await db.SaveChangesAsync();
return RedirectToAction("Index");
}
为什么每次更新操作都会复制我的对象?
【问题讨论】:
标签: c# asp.net-core entity-framework-core asp.net-core-mvc