本文整理汇总了C#中HttpContext.ToRequest方法的典型用法代码示例。如果您正苦于以下问题:C# HttpContext.ToRequest方法的具体用法?C# HttpContext.ToRequest怎么用?C# HttpContext.ToRequest使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类HttpContext
的用法示例。
在下文中一共展示了HttpContext.ToRequest方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: ProcessRequest
public virtual Task ProcessRequest(HttpContext context, Func<Task> next)
{
//Keep in sync with AppHostBase.NetCore.cs
var operationName = context.Request.GetOperationName().UrlDecode() ?? "Home";
var httpReq = context.ToRequest(operationName);
var httpRes = httpReq.Response;
var handler = HttpHandlerFactory.GetHandler(httpReq);
var serviceStackHandler = handler as IServiceStackHandler;
if (serviceStackHandler != null)
{
if (serviceStackHandler is NotFoundHttpHandler)
return next();
if (!string.IsNullOrEmpty(serviceStackHandler.RequestName))
operationName = serviceStackHandler.RequestName;
var restHandler = serviceStackHandler as RestHandler;
if (restHandler != null)
{
httpReq.OperationName = operationName = restHandler.RestPath.RequestType.GetOperationName();
}
var task = serviceStackHandler.ProcessRequestAsync(httpReq, httpRes, operationName);
task.ContinueWith(x => httpRes.Close(), TaskContinuationOptions.OnlyOnRanToCompletion | TaskContinuationOptions.AttachedToParent);
//Matches Exceptions handled in HttpListenerBase.InitTask()
return task;
}
return next();
}
示例2: GetOrCreateRequest
public static IRequest GetOrCreateRequest(HttpContext httpContext)
{
if (httpContext != null)
{
object oRequest;
if (httpContext.Items.TryGetValue(Keywords.IRequest, out oRequest))
return (IRequest) oRequest;
var req = httpContext.ToRequest();
httpContext.Items[Keywords.IRequest] = req;
return req;
}
return null;
}