zoukankan      html  css  js  c++  java
  • 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;
            } 
  • 相关阅读:
    矩阵特征值与特征向量
    拉格朗日插值matlab实现
    CloudCompare 的简单的使用说明
    kreuz-frankfurt-sample-generic-2019-02-08.xodr文件解读
    xml语言
    惯性坐标系
    四分位数及matlab实现
    参考文献类型标识
    matlab产生很多个相同的数字
    linux 中常用的一些头文件
  • 原文地址:https://www.cnblogs.com/zbw911/p/4259007.html
Copyright © 2011-2022 走看看