我有一个Nancy模块,它提供错误页面(视图) - 对于GET方法,它呈现默认视图但是使用POST方法错误页面应该是自定义的:
public class ErrorsModule : NancyModule
{
public ErrorsModule()
: base()
{
Get["/Errors/404"] = Error404;
Post["/Errors/404"] = Error404;
}
private dynamic Error404(dynamic parameters)
{
var returnURL = Request.Form.returnURL;
if (!returnURL.HasValue)
{
returnURL = ConfigurationManager.AppSettings["404"];
}
this.ViewBag.returnURL = returnURL;
return View["404"];
}
}
现在在主应用程序模块中,我已经实现了处理404错误的IStatusCodeHandler - 如何从IStatusCodeHandler Handle方法将一些数据发布到“/ Errors / 404”?可能吗?对于GET方法,我可以进行简单的重定向:
context.Response = new Nancy.Responses.RedirectResponse("/Errors/404");
对于POST?
致以最诚挚的问候,
答案 0 :(得分:0)
您可以将Error404方法中的逻辑移动到另一个类中,并直接在IStatusCodrHandler实现中使用它:
context.Response = helper.Error404(context.Request.Parameters)