我在下面包含了我的代码,它应该在您单击编辑按钮时编辑记录,而是添加新记录。任何人都可以看到我做错了吗?MVC C#编辑功能是添加而不是编辑
查看
<a href="@Url.Action("Data","Admin", new { id=data.Id })" id="launchBtn" class="btn btn-default">Edit</a>
控制器
public ActionResult Data(int? id)
{
DataVM vm;
if(id == null)
{
vm = new DataVM();
}
else
{
var dbData = _dataRepository.FindById(id.Value);
vm = _mapper.Map<DadaVM>(dbData);
}
this.SetExistingDataFormList(vm);
return View(vm);
}
private void SetExistingDataFormList(ContentVM vm)
{
var datas = _dataRepository.GetDataEndpoints();
foreach (var data in datas)
{
vm.Datas.Add(new DataVM
{
Id = content.Id,
});
}
}
你应该使用if(id.HasValue)而不是id == null – Stormhashe
不应该是AddOrUpdate而不是Add? –