c# - 从 Controller 的方法重定向到 ~/Shared/Error.cshtml

标签 c# asp.net-mvc razor

我正在使用 Visual Studio 2015、C# 和 .NET Framework 4.6.1 开发 ASP.NET MVC 5 应用。

我有一个使用这种方法的 Controller :

public ActionResult Error(string message)
{
    ViewBag.Message = message;
    return View();
}

现在它在文件夹 ~/Views/MyController/Error.cshtml 上显示自定义 View 。注意:我通过右键单击方法名称并选择 Add view... 选项创建了该 View 。

但我想对所有错误使用通用的 Error.cshtml View 。此 View 将在 ~/Views/Shared/Error.cshtml 上。

我该怎么做?

顺便说一下,我还在 Web.Config 上启用了 CustomErrors。

最佳答案

ViewEngine 在以下位置搜索 View :

~/Views/ControllerName/ActionName.cshtml
~/Views/ControllerName/ActionName.vbhtml
~/Views/ControllerName/ActionName.aspx
~/Views/ControllerName/ActionName.ascx

~/Views/Shared/ActionName.cshtml
~/Views/Shared/ActionName.vbhtml
~/Views/Shared/ActionName.aspx
~/Views/Shared/ActionName.ascx

默认情况下 View 名称是操作名称,除非您指定 View 。因此,如果您只是在 ~/Views/MyController 中省略了 Error.cshtml 文件,它应该会在您的共享文件夹中找到它:~/Views/Shared/Error。 cshtml

关于c# - 从 Controller 的方法重定向到 ~/Shared/Error.cshtml,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36326676/

相关文章:

c# - ASP.NET MVC SSL 重定向太多

c# - 角色穿过物体 - Unity3D

c# - 如何在 C# 中存储对属性的引用?

asp.net-mvc - 如何使用 RedisSessionStateProvider 配置 Redis 缓存过期?

c# - ASP.NET MVC 我可以有一个名为 PropertiesController 的 Controller 吗?

c# - 剑道日历仅供阅读

c# - 我们如何为接受动态查询作为输入的存储过程定义复杂类型 [edmx]

c# - JWT 有什么安全保障?

jquery - 背景图像显示在弹出消息上

html - 垂直对齐提交按钮和带有按钮标记的链接