Example #1
0
 public void Handle(HttpStatusCode statusCode, NancyContext context)
 {
     var viewRenderer = new DefaultViewRenderer(viewFactory);
     var response = viewRenderer.RenderView(context, "404");
     context.Response = response;
     context.Response.StatusCode = HttpStatusCode.NotFound;
 }
        private void RenderView(NancyContext context, string viewName, HttpStatusCode statusCode, object model)
        {
            var renderer = new DefaultViewRenderer(_viewFactory);
            var response = renderer.RenderView(context, viewName, model);

            context.Response = response;
            context.Response.StatusCode = statusCode;
        }
Example #3
0
        public void Handle(HttpStatusCode statusCode, NancyContext context)
        {
            IViewRenderer renderer = new DefaultViewRenderer(factory);
            Response response;

            switch (statusCode)
            {
                case HttpStatusCode.NotFound:
                    response = renderer.RenderView(context, "Error/error.cshtml", new Error("404", "The requested page was not found."));
                    break;
                case HttpStatusCode.Forbidden:
                    response = renderer.RenderView(context, "Error/error.cshtml", new Error("403","You don't have access to this page."));
                    break;
                case HttpStatusCode.Unauthorized:
                    response = renderer.RenderView(context, "Error/error.cshtml", new Error("401","You are not allowed to view this page."));
                    break;
                case HttpStatusCode.InternalServerError:
                    response = renderer.RenderView(context, "Error/error.cshtml", new Error("500","An internal error occured."));

                    object exceptionKey;
                    object exceptionObject;
                    context.Items.TryGetValue(NancyEngine.ERROR_EXCEPTION, out exceptionObject);
                    context.Items.TryGetValue(NancyEngine.ERROR_KEY, out exceptionKey);

                    if (exceptionKey != null)
                        Console.WriteLine(exceptionKey.ToString());

                    if (exceptionObject != null)
                        Console.WriteLine(exceptionObject.ToString());

                    break;
                default:
                    response = renderer.RenderView(context, "Error/error.cshtml", new Error(":(","How did I end up here?" ));
                    break;
            }

            response.StatusCode = statusCode;
            context.Response = response;
        }
 public DefaultViewRendererFixture()
 {
     this.factory = A.Fake<IViewFactory>();
     this.renderer = new DefaultViewRenderer(this.factory);
 }