C# System.Web.SessionState.HttpSessionState与会话类相同吗?如果是,怎么做?
在全局ASAX文件中的代码中,我看到以下代码:C# System.Web.SessionState.HttpSessionState与会话类相同吗?如果是,怎么做?,c#,asp.net,.net,vb.net,C#,Asp.net,.net,Vb.net,在全局ASAX文件中的代码中,我看到以下代码: Session("ErrorSource") = lastError.Source Session("ErrorPATH") = Request.Path.ToString() 如果我在会话上单击鼠标右键,然后选择“转到定义”,我将获得: Public Default Property Item(ByVal name As String) As Object Member of: System.Web.SessionState.Http
Session("ErrorSource") = lastError.Source
Session("ErrorPATH") = Request.Path.ToString()
如果我在会话上单击鼠标右键,然后选择“转到定义”,我将获得:
Public Default Property Item(ByVal name As String) As Object
Member of: System.Web.SessionState.HttpSessionState
以上说明了为什么我们没有
Session.Item(“ErrorSource”)=lastError.Source(因为Item是会话的默认属性)
我不明白会话类本身是在哪里定义的
我希望有类似SessionState.HttpSessionState(“ErrorSource”)的东西
不是Session.Item(“ErrorSource”)。那么会话是在哪里定义的呢?
Session
是System.Web.UI.Page
对象的HttpSessionState
类型的成员,您当前在该对象中开发的类看起来是继承的(它也可以继承System.Web.UI.UserControl
,这是您从中继承的两个主要类Session
)
当您在Visual Studio中选择“转到定义”时,它将找到该成员实际定义的位置,即使该成员未在当前类中定义(而是在基类或接口中定义)
Session
是System.Web.UI.Page
对象的类型HttpSessionState
的成员,您当前开发的类看起来要继承该对象(它也可能继承System.Web.UI.UserControl
,这是您继承的Session
的两个主要类)
当您在Visual Studio中选择“转到定义”时,它将找到该成员实际定义的位置,即使该成员未在当前类中定义(而是在基类或接口中定义)
会话
是System.Web.UI.Page的成员,并且该成员是HttpSessionState
对象。您是正确的:Public Overridable ReadOnly Property Session()作为System.Web.SessionState.HttpSessionState的成员:System.Web.UI.Page奇怪的是,为什么当我们单击VS上的“转到会话定义”时,我们不会直接指向会话本身的定义。而是指向一个恰好具有会话类型属性的类。因为您在其中工作的任何类都会继承System.Web.UI.Page
。由于类上未实现会话
对象,因此它会将您带到为您实现它的类(System.Web.UI.Page
)@SNash,它会将您重定向到项的定义,因为这是您在该行访问的内容。我怀疑如果您删除括号,它会将您带到页.Session
属性。@Mike Corcoran:为什么/如何将解释更改为注释?将其作为答案,我会接受。Session
是System.Web.UI.Page的成员,并且该成员是HttpSessionState
对象。您是正确的:Public Overridable ReadOnly Property Session()作为System.Web.SessionState.HttpSessionState的成员:System.Web.UI.Page奇怪的是,为什么当我们单击VS上的“转到会话定义”时,我们不会直接指向会话本身的定义。而是指向一个恰好具有会话类型属性的类。因为您在其中工作的任何类都会继承System.Web.UI.Page
。由于类上未实现会话
对象,因此它会将您带到为您实现它的类(System.Web.UI.Page
)@SNash,它会将您重定向到项的定义,因为这是您在该行访问的内容。我怀疑如果您删除括号,它会将您带到页.Session
属性。@Mike Corcoran:为什么/如何将解释更改为注释?将其作为答案,我将接受它。