首页 > 代码库 > System.Web.HttpContext.Current 跟踪分析
System.Web.HttpContext.Current 跟踪分析
public static HttpContext Current { get { return ContextBase.Current as HttpContext; } set { ContextBase.Current = (object) value; } }
internal class ContextBase { internal static object Current { get { return CallContext.HostContext; } [SecurityPermission(SecurityAction.Demand, Unrestricted = true)] set { CallContext.HostContext = value; } } [TargetedPatchingOptOut("Performance critical to inline this type of method across NGen image boundaries")] public ContextBase() { } internal static object SwitchContext(object newContext) { object hostContext = CallContext.HostContext; if (hostContext != newContext) CallContext.HostContext = newContext; return hostContext; } }
public static Object HostContext { [System.Security.SecurityCritical] // auto-generated get { Object hC; IllogicalCallContext ilcc = Thread.CurrentThread.GetIllogicalCallContext(); hC = ilcc.HostContext; if (hC == null) { LogicalCallContext lcc = GetLogicalCallContext(); hC = lcc.HostContext; } return hC; } [System.Security.SecurityCritical] // auto-generated_required set { if (value is ILogicalThreadAffinative) { IllogicalCallContext ilcc = Thread.CurrentThread.GetIllogicalCallContext(); ilcc.HostContext = null; LogicalCallContext lcc = GetLogicalCallContext(); lcc.HostContext = value; } else { LogicalCallContext lcc = GetLogicalCallContext(); lcc.HostContext = null; IllogicalCallContext ilcc = Thread.CurrentThread.GetIllogicalCallContext(); ilcc.HostContext = value; } } }
internal IllogicalCallContext GetIllogicalCallContext() { return ExecutionContext.IllogicalCallContext; }
System.Web.HttpContext.Current 跟踪分析
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。