2

在 Umbraco 中,如果页面上有 razor 宏,并且该 razor 宏引发异常,该页面仍会显示,但它会显示“错误加载宏 xyz.cshtml”,而宏应该是。

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

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

4

1 回答 1

1

在每个 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/");
}

但是,除了重定向用户之外,您还可以捕获错误然后什么也不做。这取决于您的需求。

于 2013-01-23T19:34:35.250 回答