asp.net – 如何在南希显示我的404页面?

我需要在Nancy中显示我的404错误页面

if (ErrorCode == 404)
{
  return View["404.html"];
}

怎么做?

解决方法

来自nemesv的答案是正确的,但我只想使用ViewRenderer而不是GenericFileResponse添加一个例子.

public class MyStatusHandler : IStatusCodeHandler
{
    private IViewRenderer viewRenderer;

    public MyStatusHandler(IViewRenderer viewRenderer)
    {
        this.viewRenderer = viewRenderer;
    }

    public bool HandlesStatusCode(HttpStatusCode statusCode,NancyContext context)
    {
        return statusCode == HttpStatusCode.NotFound;
    }

    public void Handle(HttpStatusCode statusCode,NancyContext context)
    {
        var response = viewRenderer.RenderView(context,"/status/404");
        response.StatusCode = statusCode;
        context.Response = response;
    }
}

dawei

【声明】:唐山站长网内容转载自互联网,其相关言论仅代表作者个人观点绝非权威,不代表本站立场。如您发现内容存在版权问题,请提交相关链接至邮箱:bqsm@foxmail.com,我们将及时予以处理。