本文整理汇总了C#中System.Web.HttpContext.ShouldNotBeNull方法的典型用法代码示例。如果您正苦于以下问题:C# HttpContext.ShouldNotBeNull方法的具体用法?C# HttpContext.ShouldNotBeNull怎么用?C# HttpContext.ShouldNotBeNull使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类System.Web.HttpContext
的用法示例。
在下文中一共展示了HttpContext.ShouldNotBeNull方法的7个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: DoProcessRequest
/// <summary>
/// HttpHandler의 작업의 메인 메소드입니다. 재정의 하여 원하는 기능을 수행하되, 제일 첫번째에 부모 클래스의 메소들를 호출해주어야 합니다.
/// </summary>
/// <param name="context"></param>
protected override void DoProcessRequest(HttpContext context) {
context.ShouldNotBeNull("context");
if(IsDebugEnabled)
log.Debug(@"요청정보를 받아 처리를 시작합니다...");
try {
var productName = context.Request[HttpParams.Product].AsText();
if(IsDebugEnabled)
log.Debug("ProductName=[{0}]에 대한 요청 처리를 접수했습니다...", productName);
var adapter = XmlDataTool.ResolveXmlDataManagerAdapter(productName);
var responseBytes = adapter.Execute(context.Request.InputStream.ToBytes());
context.WriteResponse(responseBytes);
if(IsDebugEnabled)
log.Debug("ProductName=[{0}]에 대한 요청 처리를 완료하였습니다!!!", productName);
}
catch(Exception ex) {
if(log.IsErrorEnabled)
log.ErrorException("요청을 처리하는 동안 예외가 발생했습니다.", ex);
}
}
示例2: DoProcessRequest
/// <summary>
/// HttpHandler의 작업의 메인 메소드입니다. 재정의 하여 원하는 기능을 수행하되, 제일 첫번째에 부모 클래스의 메소들를 호출해주어야 합니다.
/// </summary>
/// <param name="context"></param>
protected override void DoProcessRequest(HttpContext context) {
context.ShouldNotBeNull("context");
if(IsDebugEnabled)
log.Debug(@"Execution for request from HttpContext is starting...");
try {
var productName = context.Request[HttpParams.Product].AsText();
if(IsDebugEnabled)
log.Debug("ProductName=[{0}]에 대한 요청 처리를 접수했습니다...", productName);
var adapter = DataServiceTool.ResolveDataServiceAdapter(productName);
// Silverlight 때문에 요청/응답을 Base64 문자열로 받습니다.
var responseText = adapter.Execute(context.Request.InputStream.ToText());
// var responseBytes = adapter.Execute(context.Request.InputStream.ToBytes());
context.WriteResponse(responseText);
if(IsDebugEnabled)
log.Debug("ProductName=[{0}]에 대한 요청 처리를 완료하였습니다!!!", productName);
}
catch(Exception ex) {
if(log.IsErrorEnabled)
log.Error("요청을 처리하는 동안 예외가 발생했습니다.", ex);
}
}
示例3: DoProcessRequest
/// <summary>
/// HttpHandler의 작업의 메인 메소드입니다. 재정의 하여 원하는 기능을 수행하되, 제일 첫번째에 부모 클래스의 메소들를 호출해주어야 합니다.
/// </summary>
/// <param name="context"></param>
protected virtual void DoProcessRequest(HttpContext context) {
context.ShouldNotBeNull("context");
_compressionKind = RetriveAvailableCompressionKind(context);
if(IsDebugEnabled)
log.Debug("Client가 수용할 수 있는 압축 방식=[{0}]", _compressionKind);
}
示例4: BuildHeader
/// <summary>
/// Header 값을 추가한다.
/// </summary>
/// <param name="ctx">HttpContext</param>
/// <param name="fileItem">클라이언트로 내려줄 파일 정보</param>
/// <param name="attach">Content-Disposition의 Type<br/>
/// false : inline<br/>
/// true : attachment</param>
public virtual void BuildHeader(HttpContext ctx, FileItem fileItem, bool attach)
{
if(IsDebugEnabled)
log.Debug("==>S ctx={0}, fileItem={1}, attach={2}", ctx, fileItem, attach);
ctx.ShouldNotBeNull("HttpContext가 없습니다.");
fileItem.ShouldNotBeNull("파일정보가 없습니다.");
ctx.Response.ContentType = fileItem.ContentType;
ctx.Response.Expires = 0;
AddHeader(ctx, fileItem, attach);
}
示例5: Download
/// <summary>
/// 파일을 클라이언트에 내려준다.
/// </summary>
/// <param name="ctx">HttpContext</param>
/// <param name="fileItem">파일정보</param>
/// <param name="attach">파일 다운로드 방식</param>
public virtual void Download(HttpContext ctx, FileItem fileItem, bool attach)
{
if(IsDebugEnabled)
log.Debug("==>S ctx={0}, fileItem={1}, attach={2}", ctx, fileItem, attach);
ctx.ShouldNotBeNull("HttpContext정보가 없습니다.");
fileItem.ShouldNotBeNull("파일정보가 없습니다.");
//if(Repository.FileExists(fileItem.ServerFileName) == false)
// throw new FileNotFoundException("파일이 존재하지 않습니다.", fileItem.ToString());
BuildHeader(ctx, fileItem, attach);
WriteFile(ctx, fileItem.ServerFileName);
}
示例6: Execute
/// <summary>
/// aspx, ashx의 <see cref="HttpContext"/>로부터 XdsRequestDocument를 만들고,
/// 처리를 수행 한 후, XdsResponseDocument를 HttpContext의 Response.OutputStream에 Write를 수행합니다.
/// </summary>
/// <param name="context"></param>
public static void Execute(HttpContext context) {
context.ShouldNotBeNull("context");
if(IsDebugEnabled)
log.Debug(@"Execution for request from HttpContext is starting...");
var request = context.Request;
var productName = request.GetProductName();
var compress = request.GetUseCompress();
var security = request.GetUseSecurity();
var serializer = XmlDataServiceTool.GetSerializer(compress, security);
XdsResponseDocument result = null;
try {
CheckProductExists(productName);
Guard.Assert(request.TotalBytes > 0, "처리할 요청정보가 제공되지 않았습니다.");
var requestBytes = request.InputStream.ToBytes();
var xdsRequest = ((byte[])serializer.Deserialize(requestBytes)).ConvertToXdsRequestDocument();
// var xdsRequest = XmlTool.Deserialize<XdsRequestDocument>(request.InputStream);
result = Execute(xdsRequest, productName);
}
catch(Exception ex) {
if(log.IsErrorEnabled)
log.ErrorException("요청처리 중 예외가 발생했습니다.", ex);
// 예외정보를 Client에게도 보낸다.
result = result ?? new XdsResponseDocument();
result.ReportError(ex);
}
finally {
if(result != null)
WriteResponse(context.Response, result, serializer);
}
if(IsDebugEnabled)
log.Debug("Execution for request from HttpContext is finished!!!");
}
示例7: DoProcessRequest
/// <summary>
/// HttpHandler의 작업의 메인 메소드입니다. 재정의 하여 원하는 기능을 수행하되, 제일 첫번째에 부모 클래스의 메소들를 호출해주어야 합니다.
/// </summary>
/// <param name="context"></param>
protected override void DoProcessRequest(HttpContext context) {
context.ShouldNotBeNull("context");
if(IsDebugEnabled)
log.Debug(@"JSON TEXT 형식의 요청에 대해 작업 후, JSON TEXT 문자열로 반환합니다.");
try {
var productName = context.Request[HttpParams.Product].AsText();
var method = context.Request[HttpParams.Method].AsText();
var responseFormat = context.Request[HttpParams.ResponseFormat].AsEnum(ResponseFormatKind.ResultSet);
if(IsDebugEnabled)
log.Debug("ProductName=[{0}], Method=[{1}], ResponseFormat=[{2}] 에 대한 요청 처리를 접수했습니다...",
productName, method, responseFormat);
var requestMessage = new RequestMessage();
requestMessage.AddItem(method, responseFormat);
var dataService = DataServiceTool.ResolveDataService(productName);
var responseMessage = dataService.Execute(requestMessage);
var responseText = JsonTool.SerializeAsText(responseMessage);
var responseBytes = Compressor.Compress(responseText.ToBytes());
context.WriteResponse(responseBytes);
//var response = context.Response;
//response.OutputStream.Write(responseBytes, 0, responseBytes.Length);
//response.OutputStream.Flush();
if(IsDebugEnabled)
log.Debug("ProductName=[{0}], Method=[{1}]에 대한 요청 처리를 완료하였습니다!!!", productName, method);
}
catch(Exception ex) {
if(log.IsErrorEnabled)
log.Error("요청을 처리하는 동안 예외가 발생했습니다.", ex);
}
}