重定向到有关剃刀宏错误的自定义错误页面

本文关键字:错误 自定义 剃刀 重定向 | 更新日期: 2023-09-27 17:55:51

在 Umbraco 中,如果页面上有一个 razor 宏,并且该 razor 宏引发异常,该页面仍会显示,但它会显示"加载宏 xyz.cshtml 时出错"宏本来应该在的位置。

每当发生这种情况时,我想重定向到自定义/友好的错误页面,但我找不到有关如何执行此操作的任何信息。 可能吗?

我尝试像往常一样设置 <customErrors> 标签,但它不起作用。

重定向到有关剃刀宏错误的自定义错误页面

在每个 razor 脚本中,您可以使用 try/catch 包围您的代码,然后在捕获错误时重定向:

@try
{
    //macro code...
}
catch (Exception ex)
{
    //possible code to log error...
    //redirect to friendly error page:
    Response.Redirect("~/path-to-error-page/");
}

但是,与其重定向用户,您还可以捕获错误,然后什么都不做。这取决于您的需求。