HttpContext.Current가 정적 속성 인 이유가 약간 혼란 스럽습니까? 런타임에 하나 이상의 요청을 처리하는 중이면 정적이기 때문에 모든 요청이 동일한 Current 값을 볼 수 있습니까? 또는 일부 동기화 기술을 사용하여 프레임 워크로 처리되며, 그렇다면 왜 정적이 아닌 일반 속성이 사용됩니다.HttpContext.Current가 정적 인 이유
누락 된 항목이 있습니까?
public static HttpContext Current
{
get
{
return ContextBase.Current as HttpContext;
}
set
{
ContextBase.Current = (object) value;
}
}
그리고 ContextBase 그 속성에 사용 :
internal class ContextBase
{
internal static object Current
{
get
{
return CallContext.HostContext;
}
[SecurityPermission(SecurityAction.Demand, Unrestricted = true)] set
{
CallContext.HostContext = value;
}
}
그리고 CallContext : 여기
와우! ..이 정보를 제공해 주셔서 감사합니다. 나는 그것에 대해 모른다 – user3359453
@ user3359453 FYI 이러한 코드 비트는 http://referencesource.microsoft.com에서 .NET 프레임 워크의 내부 이해를 위해 Microsoft에서 사용할 수 있습니다. –