public ProcessRazorPage ( IRequest httpReq, ServiceStack.Razor.Managers.RazorPage contentPage, object model, IResponse httpRes ) : void | ||
httpReq | IRequest | |
contentPage | ServiceStack.Razor.Managers.RazorPage | |
model | object | |
httpRes | IResponse | |
return | void |
public override void ProcessRequest(IHttpRequest httpReq, IHttpResponse httpRes, string operationName) { httpRes.ContentType = ContentType.Html; if (RazorFormat == null) { RazorFormat = RazorFormat.Instance; } var contentPage = RazorPage ?? RazorFormat.FindByPathInfo(PathInfo); if (contentPage == null) { httpRes.StatusCode = (int)HttpStatusCode.NotFound; httpRes.EndHttpRequest(); return; } if (RazorFormat.WatchForModifiedPages) { RazorFormat.ReloadIfNeeeded(contentPage); } //Add good caching support //if (httpReq.DidReturn304NotModified(contentPage.GetLastModified(), httpRes)) // return; var modelType = RazorPage != null?RazorPage.GetRazorTemplate().ModelType : null; var model = modelType == null || modelType == typeof(DynamicRequestObject) ? null : DeserializeHttpRequest(modelType, httpReq, httpReq.ContentType); RazorFormat.ProcessRazorPage(httpReq, contentPage, model, httpRes); }
public override void ProcessRequest(IHttpRequest httpReq, IHttpResponse httpRes, string operationName) { httpRes.ContentType = ContentType.Html; if (RazorFormat == null) { RazorFormat = RazorFormat.Instance; } var contentPage = RazorPage ?? RazorFormat.FindByPathInfo(PathInfo); if (contentPage == null) { httpRes.StatusCode = (int)HttpStatusCode.NotFound; httpRes.EndHttpRequest(); return; } var model = Model; if (model == null) { httpReq.Items.TryGetValue("Model", out model); } if (model == null) { var modelType = RazorPage != null ? RazorPage.ModelType : null; model = modelType == null || modelType == typeof(DynamicRequestObject) ? null : DeserializeHttpRequest(modelType, httpReq, httpReq.ContentType); } RazorFormat.ProcessRazorPage(httpReq, contentPage, model, httpRes); }
public override async Task ProcessRequestAsync(IRequest httpReq, IResponse httpRes, string operationName) { if (HostContext.ApplyCustomHandlerRequestFilters(httpReq, httpRes)) { return; } Filter?.Invoke(httpReq); httpRes.ContentType = MimeTypes.Html; if (RazorFormat == null) { RazorFormat = RazorFormat.Instance; } var contentPage = RazorPage ?? RazorFormat.GetContentPage(PathInfo); if (contentPage == null) { httpRes.StatusCode = (int)HttpStatusCode.NotFound; httpRes.EndHttpHandlerRequest(); return; } var model = Model; if (model == null) { httpReq.Items.TryGetValue("Model", out model); } if (model == null) { var modelType = RazorPage?.ModelType; model = modelType == null || modelType == typeof(DynamicRequestObject) ? null : await DeserializeHttpRequestAsync(modelType, httpReq, httpReq.ContentType); } using (RazorFormat.ProcessRazorPage(httpReq, contentPage, model, httpRes)) { httpRes.EndHttpHandlerRequest(skipHeaders: true); } }
public override void ProcessRequest(IRequest httpReq, IResponse httpRes, string operationName) { HostContext.ApplyCustomHandlerRequestFilters(httpReq, httpRes); if (httpRes.IsClosed) { return; } httpRes.ContentType = MimeTypes.Html; if (RazorFormat == null) { RazorFormat = RazorFormat.Instance; } var contentPage = RazorPage ?? RazorFormat.GetContentPage(PathInfo); if (contentPage == null) { httpRes.StatusCode = (int)HttpStatusCode.NotFound; httpRes.EndHttpHandlerRequest(); return; } var model = Model; if (model == null) { httpReq.Items.TryGetValue("Model", out model); } if (model == null) { var modelType = RazorPage != null ? RazorPage.ModelType : null; model = modelType == null || modelType == typeof(DynamicRequestObject) ? null : DeserializeHttpRequest(modelType, httpReq, httpReq.ContentType); } RazorFormat.ProcessRazorPage(httpReq, contentPage, model, httpRes); }