我正在研究MVC5项目。我是一个自动生成的索引页面。 当用户进入索引页面并决定删除其id为5的记录时,它会转到以下URL:/ XYZ / Delete / 5
当用户确认删除时,他被重定向到索引页面:/ Roles_ModelFields
如果用户点击后退按钮,他将被重定向到:/ XYZ / Delete / 5,这会出错:找不到以下页面网址:/ XYZ / Delete / 5
如何将他重定向到索引页面而不是删除记录ID的删除页面。
问候。
答案 0 :(得分:0)
好的,请关注您的示例..如果用户已经删除了记录,然后重定向回索引页面,然后用户决定点击后退按钮然后应该呈现错误“无法找到以下页面网址”。无法找到该页面,因为该页面专门用于您已删除的记录。
这很可能不是处理这种情况的最好方法,但是在你的删除ActionResult中..我假设你在动作中留下了通用代码,所以它看起来像这样:
// GET: ControllerName/Delete/5
[ValidateInput(false)]
public ActionResult Delete(int? id)
{
if (id == null)
{
return new HttpStatusCodeResult(HttpStatusCode.BadRequest);
}
...
if(!db.TableName.Any(x => x.Id == id.Value)) // if there are zero record's Ids that match the id passed then do this
{
return RedirectToAction("Index");
}
如果有帮助,请告诉我。