1
在Umbraco中,如果页面上有剃刀宏,并且剃刀宏引发异常,页面仍显示,但它显示“Error loading macro xyz.cshtml “宏观将会在哪里。重定向到剃须刀宏上的自定义错误页面错误
我想重定向到一个自定义/友好的错误页面,只要发生这种情况,但我找不到任何有关如何操作的信息。可能吗?
我试过像往常一样设置<customErrors>
标签,但它不起作用。
在Umbraco中,如果页面上有剃刀宏,并且剃刀宏引发异常,页面仍显示,但它显示“Error loading macro xyz.cshtml “宏观将会在哪里。重定向到剃须刀宏上的自定义错误页面错误
我想重定向到一个自定义/友好的错误页面,只要发生这种情况,但我找不到任何有关如何操作的信息。可能吗?
我试过像往常一样设置<customErrors>
标签,但它不起作用。
在每个剃须刀脚本,你可以围绕你的代码用try/catch语句,然后重定向,如果错误被捕获:
@try
{
//macro code...
}
catch (Exception ex)
{
//possible code to log error...
//redirect to friendly error page:
Response.Redirect("~/path-to-error-page/");
}
但是,而不是将用户重定向,你也可以只捕获错误并然后什么都不做。这取决于你的需求。
这可能会起作用,但我不想用try-catch块来混淆我的宏。无论如何,感谢你的回应 - 我可能会这样做。 –
查看[这个论坛帖子](http://our.umbraco.org/forum/developers/razor/25449-Hide-uncaught-exceptions-in-razor-macros)了解更多的建议。 –
这是相关的[Umbraco问题](http://issues.umbraco.org/issue/U4-497)。 –