发布 Edit() 后,编辑项目 return Details.cshtml 而不是 Index.cshtml
Upon posting Edit(), return Details.cshtml of edited item rather than Index.cshtml
在 ASP.NET MVC 应用程序中,假设您有一个简单的模型 class Blog
并且您正在使用编辑操作更新条目。
[HttpPost]
public async Task<IActionResult> Edit(int id, [Bind("Id,Title")] Blog blog)
{
// controller logic here
return View(blog);
}
此 return 是 Blog
的(默认命名的)Index.cshtml
视图。您如何将此内容发送到 return 已编辑的同一 Blog
项目的 Details.cshtml
视图?我觉得这是一个简单的更改,但我找不到任何答案来回答这个问题,我也不确定从哪里开始。
您可以 return 按博客模型查看详细信息
return View("Detail",blog);
如果您的 Detail.cshtml 在控制器中有 GET 操作,为了更安全,您还可以使用反射:
return View(nameof(Detail),blog);
请记住,在这种情况下,Details.cshtml
必须使用与您尝试 return 相同的模型对象,例如@model MyApp.Models.Blog
在 ASP.NET MVC 应用程序中,假设您有一个简单的模型 class Blog
并且您正在使用编辑操作更新条目。
[HttpPost]
public async Task<IActionResult> Edit(int id, [Bind("Id,Title")] Blog blog)
{
// controller logic here
return View(blog);
}
此 return 是 Blog
的(默认命名的)Index.cshtml
视图。您如何将此内容发送到 return 已编辑的同一 Blog
项目的 Details.cshtml
视图?我觉得这是一个简单的更改,但我找不到任何答案来回答这个问题,我也不确定从哪里开始。
您可以 return 按博客模型查看详细信息
return View("Detail",blog);
如果您的 Detail.cshtml 在控制器中有 GET 操作,为了更安全,您还可以使用反射:
return View(nameof(Detail),blog);
请记住,在这种情况下,Details.cshtml
必须使用与您尝试 return 相同的模型对象,例如@model MyApp.Models.Blog