Imported Upstream version 3.6.0

Former-commit-id: da6be194a6b1221998fc28233f2503bd61dd9d14
This commit is contained in:
Jo Shields
2014-08-13 10:39:27 +01:00
commit a575963da9
50588 changed files with 8155799 additions and 0 deletions

View File

@@ -0,0 +1,28 @@
<?xml version="1.0" encoding="utf-8"?>
<Type Name="IReadOnlySessionState" FullName="System.Web.SessionState.IReadOnlySessionState">
<TypeSignature Language="C#" Maintainer="auto" Value="public interface IReadOnlySessionState : System.Web.SessionState.IRequiresSessionState" />
<AssemblyInfo>
<AssemblyName>System.Web</AssemblyName>
<AssemblyPublicKey>
</AssemblyPublicKey>
<AssemblyVersion>1.0.5000.0</AssemblyVersion>
<AssemblyVersion>2.0.0.0</AssemblyVersion>
</AssemblyInfo>
<ThreadSafetyStatement>Gtk# is thread aware, but not thread safe; See the &lt;link location="node:gtk-sharp/programming/threads"&gt;Gtk# Thread Programming&lt;/link&gt; for details.</ThreadSafetyStatement>
<Interfaces>
<Interface>
<InterfaceName>System.Web.SessionState.IRequiresSessionState</InterfaceName>
</Interface>
</Interfaces>
<Docs>
<remarks>
<attribution license="cc4" from="Microsoft" modified="false" />
<para>Implement the <see cref="T:System.Web.SessionState.IReadOnlySessionState" /> interface in your custom handler to identify that your handler requires only read access to session-state values.</para>
</remarks>
<summary>
<attribution license="cc4" from="Microsoft" modified="false" />
<para>Specifies that the target HTTP handler requires only read access to session-state values. This is a marker interface and has no methods.</para>
</summary>
</Docs>
<Members />
</Type>

View File

@@ -0,0 +1,24 @@
<?xml version="1.0" encoding="utf-8"?>
<Type Name="IRequiresSessionState" FullName="System.Web.SessionState.IRequiresSessionState">
<TypeSignature Language="C#" Maintainer="auto" Value="public interface IRequiresSessionState" />
<AssemblyInfo>
<AssemblyName>System.Web</AssemblyName>
<AssemblyPublicKey>
</AssemblyPublicKey>
<AssemblyVersion>1.0.5000.0</AssemblyVersion>
<AssemblyVersion>2.0.0.0</AssemblyVersion>
</AssemblyInfo>
<ThreadSafetyStatement>Gtk# is thread aware, but not thread safe; See the &lt;link location="node:gtk-sharp/programming/threads"&gt;Gtk# Thread Programming&lt;/link&gt; for details.</ThreadSafetyStatement>
<Interfaces />
<Docs>
<remarks>
<attribution license="cc4" from="Microsoft" modified="false" />
<para>Implement the <see cref="T:System.Web.SessionState.IRequiresSessionState" /> interface in your custom HTTP handler to identify that your handler requires read and write access to session-state values.</para>
</remarks>
<summary>
<attribution license="cc4" from="Microsoft" modified="false" />
<para>Specifies that the target HTTP handler requires read and write access to session-state values. This is a marker interface and has no methods.</para>
</summary>
</Docs>
<Members />
</Type>

View File

@@ -0,0 +1,213 @@
<?xml version="1.0" encoding="utf-8"?>
<Type Name="ISessionIDManager" FullName="System.Web.SessionState.ISessionIDManager">
<TypeSignature Language="C#" Value="public interface ISessionIDManager" />
<AssemblyInfo>
<AssemblyName>System.Web</AssemblyName>
<AssemblyVersion>2.0.0.0</AssemblyVersion>
</AssemblyInfo>
<Interfaces />
<Docs>
<since version=".NET 2.0" />
<remarks>
<attribution license="cc4" from="Microsoft" modified="false" />
<para>The <see cref="T:System.Web.SessionState.ISessionIDManager" /> interface identifies the methods that you must implement to create a custom manager for session-identifier values. An <see cref="T:System.Web.SessionState.ISessionIDManager" /> interface implementation creates and validates session-identifier values, and manages the storage of a session identifier in the HTTP response as well as the retrieval of a session-identifier value from the HTTP request. You enable the custom session-ID manager using the sessionIDManagerType attribute of the <format type="text/html"><a href="bda6fb8c-0076-43e3-9ce2-8cf1f8bdaa7d">sessionState</a></format> configuration element.</para>
<para>If your <see cref="T:System.Web.SessionState.ISessionIDManager" /> interface implementation will support cookieless session identifiers, you will need to implement a solution for sending and retrieving session identifiers in the URL, such as an ISAPI filter.</para>
<para>If you only want to supply custom session-identifier values to be used by ASP.NET session state, you can create a class that inherits the <see cref="T:System.Web.SessionState.SessionIDManager" /> class and override only the <see cref="M:System.Web.SessionState.SessionIDManager.CreateSessionID(System.Web.HttpContext)" /> and <see cref="M:System.Web.SessionState.SessionIDManager.Validate(System.String)" /> methods with your own custom implementation. This enables you to supply your own session-identifier values, while relying on the base <see cref="T:System.Web.SessionState.SessionIDManager" /> class to store values to the HTTP response and retrieve values from the HTTP request. For an example of overriding the <see cref="T:System.Web.SessionState.SessionIDManager" /> class and implementing these methods, see the example provided for the <see cref="M:System.Web.SessionState.SessionIDManager.CreateSessionID(System.Web.HttpContext)" /> method of the <see cref="T:System.Web.SessionState.SessionIDManager" /> class.</para>
</remarks>
<summary>
<attribution license="cc4" from="Microsoft" modified="false" />
<para>Defines the contract that a custom session-state identifier manager must implement.</para>
</summary>
</Docs>
<Members>
<Member MemberName="CreateSessionID">
<MemberSignature Language="C#" Value="public string CreateSessionID (System.Web.HttpContext context);" />
<MemberType>Method</MemberType>
<ReturnValue>
<ReturnType>System.String</ReturnType>
</ReturnValue>
<Parameters>
<Parameter Name="context" Type="System.Web.HttpContext" />
</Parameters>
<Docs>
<since version=".NET 2.0" />
<remarks>
<attribution license="cc4" from="Microsoft" modified="false" />
<para>The <see cref="M:System.Web.SessionState.ISessionIDManager.CreateSessionID(System.Web.HttpContext)" /> method is used to generate a unique session identifier that the <see cref="T:System.Web.SessionState.SessionStateModule" /> object will use to identify a new session. The value returned by <see cref="M:System.Web.SessionState.ISessionIDManager.CreateSessionID(System.Web.HttpContext)" /> must be unique and must contain valid characters that can be stored in an HTTP response and request. If it is possible that the value returned by your <see cref="M:System.Web.SessionState.ISessionIDManager.CreateSessionID(System.Web.HttpContext)" /> implementation contains characters that are not valid in an HTTP response or request, you should use the <see cref="Overload:System.Web.HttpUtility.UrlEncode" /> method to encode the session-identifier value in your <see cref="M:System.Web.SessionState.ISessionIDManager.SaveSessionID(System.Web.HttpContext,System.String,System.Boolean@,System.Boolean@)" /> method implementation and the <see cref="Overload:System.Web.HttpUtility.UrlDecode" /> method to decode the session-identifier value in your <see cref="M:System.Web.SessionState.ISessionIDManager.GetSessionID(System.Web.HttpContext)" /> method implementation.</para>
</remarks>
<summary>
<attribution license="cc4" from="Microsoft" modified="false" />
<para>Creates a unique session identifier.</para>
</summary>
<returns>
<attribution license="cc4" from="Microsoft" modified="false" />
<para>A unique session identifier.</para>
</returns>
<param name="context">
<attribution license="cc4" from="Microsoft" modified="false" />The current <see cref="T:System.Web.HttpContext" /> object that references server objects used to process HTTP requests (for example, the <see cref="P:System.Web.HttpContext.Request" /> and <see cref="P:System.Web.HttpContext.Response" /> properties). </param>
</Docs>
<AssemblyInfo>
<AssemblyVersion>2.0.0.0</AssemblyVersion>
</AssemblyInfo>
</Member>
<Member MemberName="GetSessionID">
<MemberSignature Language="C#" Value="public string GetSessionID (System.Web.HttpContext context);" />
<MemberType>Method</MemberType>
<ReturnValue>
<ReturnType>System.String</ReturnType>
</ReturnValue>
<Parameters>
<Parameter Name="context" Type="System.Web.HttpContext" />
</Parameters>
<Docs>
<since version=".NET 2.0" />
<remarks>
<attribution license="cc4" from="Microsoft" modified="false" />
<para>The <see cref="M:System.Web.SessionState.ISessionIDManager.GetSessionID(System.Web.HttpContext)" /> method is called by the <see cref="T:System.Web.SessionState.SessionStateModule" /> during the <see cref="E:System.Web.HttpApplication.AcquireRequestState" /> and <see cref="E:System.Web.HttpApplication.EndRequest" /> events. If you cannot retrieve a valid session identifier from the HTTP request, return null. If the <see cref="T:System.Web.SessionState.SessionStateModule" /> receives null from the <see cref="M:System.Web.SessionState.ISessionIDManager.GetSessionID(System.Web.HttpContext)" /> method, it will call the <see cref="M:System.Web.SessionState.ISessionIDManager.CreateSessionID(System.Web.HttpContext)" /> method to get a new session identifier for a new session.</para>
<para>If it is possible that the value returned by your <see cref="M:System.Web.SessionState.ISessionIDManager.CreateSessionID(System.Web.HttpContext)" /> implementation contains characters that are not valid in an HTTP response or request, you should use the <see cref="Overload:System.Web.HttpUtility.UrlEncode" /> method to encode the session-identifier value in your <see cref="M:System.Web.SessionState.ISessionIDManager.SaveSessionID(System.Web.HttpContext,System.String,System.Boolean@,System.Boolean@)" /> method implementation and the <see cref="Overload:System.Web.HttpUtility.UrlDecode" /> method to decode the session-identifier value in your <see cref="M:System.Web.SessionState.ISessionIDManager.GetSessionID(System.Web.HttpContext)" /> method implementation.</para>
</remarks>
<summary>
<attribution license="cc4" from="Microsoft" modified="false" />
<para>Gets the session identifier from the context of the current HTTP request.</para>
</summary>
<returns>
<attribution license="cc4" from="Microsoft" modified="false" />
<para>The current session identifier sent with the HTTP request.</para>
</returns>
<param name="context">
<attribution license="cc4" from="Microsoft" modified="false" />The current <see cref="T:System.Web.HttpContext" /> object that references server objects used to process HTTP requests (for example, the <see cref="P:System.Web.HttpContext.Request" /> and <see cref="P:System.Web.HttpContext.Response" /> properties).</param>
</Docs>
<AssemblyInfo>
<AssemblyVersion>2.0.0.0</AssemblyVersion>
</AssemblyInfo>
</Member>
<Member MemberName="Initialize">
<MemberSignature Language="C#" Value="public void Initialize ();" />
<MemberType>Method</MemberType>
<ReturnValue>
<ReturnType>System.Void</ReturnType>
</ReturnValue>
<Parameters />
<Docs>
<since version=".NET 2.0" />
<remarks>
<attribution license="cc4" from="Microsoft" modified="false" />
<para>Use the <see cref="M:System.Web.SessionState.ISessionIDManager.Initialize" /> method to initialize the <see cref="T:System.Web.SessionState.ISessionIDManager" /> object.</para>
</remarks>
<summary>
<attribution license="cc4" from="Microsoft" modified="false" />
<para>Initializes the <see cref="T:System.Web.SessionState.SessionIDManager" /> object.</para>
</summary>
</Docs>
<AssemblyInfo>
<AssemblyVersion>2.0.0.0</AssemblyVersion>
</AssemblyInfo>
</Member>
<Member MemberName="InitializeRequest">
<MemberSignature Language="C#" Value="public bool InitializeRequest (System.Web.HttpContext context, bool suppressAutoDetectRedirect, out bool supportSessionIDReissue);" />
<MemberType>Method</MemberType>
<ReturnValue>
<ReturnType>System.Boolean</ReturnType>
</ReturnValue>
<Parameters>
<Parameter Name="context" Type="System.Web.HttpContext" />
<Parameter Name="suppressAutoDetectRedirect" Type="System.Boolean" />
<Parameter Name="supportSessionIDReissue" Type="System.Boolean&amp;" RefType="out" />
</Parameters>
<Docs>
<param name="context">To be added.</param>
<param name="suppressAutoDetectRedirect">To be added.</param>
<param name="supportSessionIDReissue">To be added.</param>
<summary>To be added.</summary>
<returns>To be added.</returns>
<remarks>To be added.</remarks>
<since version=".NET 2.0" />
</Docs>
<AssemblyInfo>
<AssemblyVersion>2.0.0.0</AssemblyVersion>
</AssemblyInfo>
</Member>
<Member MemberName="RemoveSessionID">
<MemberSignature Language="C#" Value="public void RemoveSessionID (System.Web.HttpContext context);" />
<MemberType>Method</MemberType>
<ReturnValue>
<ReturnType>System.Void</ReturnType>
</ReturnValue>
<Parameters>
<Parameter Name="context" Type="System.Web.HttpContext" />
</Parameters>
<Docs>
<since version=".NET 2.0" />
<remarks>
<attribution license="cc4" from="Microsoft" modified="false" />
<para>The <see cref="T:System.Web.SessionState.SessionStateModule" /> calls the <see cref="M:System.Web.SessionState.SessionIDManager.RemoveSessionID(System.Web.HttpContext)" /> method during the <see cref="E:System.Web.HttpApplication.ReleaseRequestState" /> event to remove the session identifier from the <see cref="P:System.Web.HttpResponse.Cookies" /> collection if a new session was created but was not used.</para>
</remarks>
<summary>
<attribution license="cc4" from="Microsoft" modified="false" />
<para>Deletes the session identifier from the cookie or from the URL.</para>
</summary>
<param name="context">
<attribution license="cc4" from="Microsoft" modified="false" />The current <see cref="T:System.Web.HttpContext" /> object that references server objects used to process HTTP requests (for example, the <see cref="P:System.Web.HttpContext.Request" /> and <see cref="P:System.Web.HttpContext.Response" /> properties).</param>
</Docs>
<AssemblyInfo>
<AssemblyVersion>2.0.0.0</AssemblyVersion>
</AssemblyInfo>
</Member>
<Member MemberName="SaveSessionID">
<MemberSignature Language="C#" Value="public void SaveSessionID (System.Web.HttpContext context, string sessionID, out bool isRedirected, out bool isCookieAdded);" />
<MemberType>Method</MemberType>
<ReturnValue>
<ReturnType>System.Void</ReturnType>
</ReturnValue>
<Parameters>
<Parameter Name="context" Type="System.Web.HttpContext" />
<Parameter Name="sessionID" Type="System.String" />
<Parameter Name="isRedirected" Type="System.Boolean&amp;" RefType="out" />
<Parameter Name="isCookieAdded" Type="System.Boolean&amp;" RefType="out" />
</Parameters>
<Docs>
<param name="context">To be added.</param>
<param name="sessionID">To be added.</param>
<param name="isRedirected">To be added.</param>
<param name="isCookieAdded">To be added.</param>
<summary>To be added.</summary>
<remarks>To be added.</remarks>
<since version=".NET 2.0" />
</Docs>
<AssemblyInfo>
<AssemblyVersion>2.0.0.0</AssemblyVersion>
</AssemblyInfo>
</Member>
<Member MemberName="Validate">
<MemberSignature Language="C#" Value="public bool Validate (string id);" />
<MemberType>Method</MemberType>
<ReturnValue>
<ReturnType>System.Boolean</ReturnType>
</ReturnValue>
<Parameters>
<Parameter Name="id" Type="System.String" />
</Parameters>
<Docs>
<since version=".NET 2.0" />
<remarks>
<attribution license="cc4" from="Microsoft" modified="false" />
<para>The <see cref="M:System.Web.SessionState.ISessionIDManager.Validate(System.String)" /> method verifies that the supplied <paramref name="id" /> is a valid session identifier.</para>
<para>Your <see cref="T:System.Web.SessionState.ISessionIDManager" /> implementation should call the <see cref="M:System.Web.SessionState.ISessionIDManager.Validate(System.String)" /> method from the <see cref="M:System.Web.SessionState.ISessionIDManager.GetSessionID(System.Web.HttpContext)" /> method when retrieving a session identifier from an HTTP request to ensure that the supplied session identifier is properly formatted.</para>
</remarks>
<summary>
<attribution license="cc4" from="Microsoft" modified="false" />
<para>Confirms that the supplied session identifier is valid.</para>
</summary>
<returns>
<attribution license="cc4" from="Microsoft" modified="false" />
<para>true if the session identifier is valid; otherwise, false.</para>
</returns>
<param name="id">
<attribution license="cc4" from="Microsoft" modified="false" />The session identifier to validate. </param>
</Docs>
<AssemblyInfo>
<AssemblyVersion>2.0.0.0</AssemblyVersion>
</AssemblyInfo>
</Member>
</Members>
</Type>

View File

@@ -0,0 +1,187 @@
<?xml version="1.0" encoding="utf-8"?>
<Type Name="ISessionStateItemCollection" FullName="System.Web.SessionState.ISessionStateItemCollection">
<TypeSignature Language="C#" Value="public interface ISessionStateItemCollection : System.Collections.ICollection" />
<AssemblyInfo>
<AssemblyName>System.Web</AssemblyName>
<AssemblyVersion>2.0.0.0</AssemblyVersion>
</AssemblyInfo>
<Interfaces>
<Interface>
<InterfaceName>System.Collections.ICollection</InterfaceName>
</Interface>
</Interfaces>
<Docs>
<since version=".NET 2.0" />
<remarks>
<attribution license="cc4" from="Microsoft" modified="false" />
<para>The <see cref="T:System.Web.SessionState.ISessionStateItemCollection" /> interface defines the collection of session items exposed to application code by the <see cref="T:System.Web.SessionState.HttpSessionStateContainer" /> class.</para>
<para>The ASP.NET implementation of the <see cref="T:System.Web.SessionState.ISessionStateItemCollection" /> interface is the <see cref="T:System.Web.SessionState.SessionStateItemCollection" /> class. </para>
<para>If you create a class derived from the <see cref="T:System.Web.SessionState.SessionStateStoreProviderBase" /> class to store session data, you can either use the <see cref="T:System.Web.SessionState.SessionStateItemCollection" /> class to manage the stored objects or implement the <see cref="T:System.Web.SessionState.ISessionStateItemCollection" /> interface on your own collection manager.</para>
<para>If you implement the <see cref="T:System.Web.SessionState.ISessionStateItemCollection" /> interface, you must also create a class that inherits the <see cref="T:System.Web.SessionState.SessionStateStoreProviderBase" /> class in order to make use of your <see cref="T:System.Web.SessionState.ISessionStateItemCollection" /> implementation to manage session variables.</para>
<para>An <see cref="T:System.Web.SessionState.ISessionStateItemCollection" /> implementation must also implement the members of the <see cref="T:System.Collections.ICollection" /> interface.</para>
</remarks>
<summary>
<attribution license="cc4" from="Microsoft" modified="false" />
<para>Defines the contract for the collection used by ASP.NET session state to manage session.</para>
</summary>
</Docs>
<Members>
<Member MemberName="Clear">
<MemberSignature Language="C#" Value="public void Clear ();" />
<MemberType>Method</MemberType>
<ReturnValue>
<ReturnType>System.Void</ReturnType>
</ReturnValue>
<Parameters />
<Docs>
<since version=".NET 2.0" />
<remarks>
<attribution license="cc4" from="Microsoft" modified="false" />
<para>In implementing the <see cref="M:System.Web.SessionState.ISessionStateItemCollection.Clear" /> method, you should set the <see cref="P:System.Web.SessionState.ISessionStateItemCollection.Dirty" /> property to true to indicate that values in the <see cref="T:System.Web.SessionState.ISessionStateItemCollection" /> implementation have been modified.</para>
</remarks>
<summary>
<attribution license="cc4" from="Microsoft" modified="false" />
<para>Removes all values and keys from the session-state collection.</para>
</summary>
</Docs>
<AssemblyInfo>
<AssemblyVersion>2.0.0.0</AssemblyVersion>
</AssemblyInfo>
</Member>
<Member MemberName="Dirty">
<MemberSignature Language="C#" Value="public bool Dirty { set; get; }" />
<MemberType>Property</MemberType>
<ReturnValue>
<ReturnType>System.Boolean</ReturnType>
</ReturnValue>
<Docs>
<value>To be added.</value>
<since version=".NET 2.0" />
<remarks>
<attribution license="cc4" from="Microsoft" modified="false" />
<para>The <see cref="P:System.Web.SessionState.ISessionStateItemCollection.Dirty" /> property is used by the <see cref="T:System.Web.SessionState.SessionStateModule" /> to determine whether the values in an <see cref="T:System.Web.SessionState.ISessionStateItemCollection" /> implementation have been modified.</para>
<para>In implementing the <see cref="T:System.Web.SessionState.ISessionStateItemCollection" /> interface, you should initialize the <see cref="P:System.Web.SessionState.ISessionStateItemCollection.Dirty" /> property as false and set the <see cref="P:System.Web.SessionState.SessionStateItemCollection.Dirty" /> property to true in the implementations of the <see cref="M:System.Web.SessionState.ISessionStateItemCollection.Remove(System.String)" />, <see cref="M:System.Web.SessionState.ISessionStateItemCollection.RemoveAt(System.Int32)" />, or <see cref="M:System.Web.SessionState.ISessionStateItemCollection.Clear" /> methods.</para>
</remarks>
<summary>
<attribution license="cc4" from="Microsoft" modified="false" />
<para>Gets or sets a value indicating whether the collection has been marked as changed.</para>
</summary>
</Docs>
<AssemblyInfo>
<AssemblyVersion>2.0.0.0</AssemblyVersion>
</AssemblyInfo>
</Member>
<Member MemberName="Item">
<MemberSignature Language="C#" Value="public object this[int index] { set; get; }" />
<MemberType>Property</MemberType>
<ReturnValue>
<ReturnType>System.Object</ReturnType>
</ReturnValue>
<Parameters>
<Parameter Name="index" Type="System.Int32" />
</Parameters>
<Docs>
<param name="index">To be added.</param>
<summary>To be added.</summary>
<value>To be added.</value>
<remarks>To be added.</remarks>
<since version=".NET 2.0" />
</Docs>
<AssemblyInfo>
<AssemblyVersion>2.0.0.0</AssemblyVersion>
</AssemblyInfo>
</Member>
<Member MemberName="Item">
<MemberSignature Language="C#" Value="public object this[string name] { set; get; }" />
<MemberType>Property</MemberType>
<ReturnValue>
<ReturnType>System.Object</ReturnType>
</ReturnValue>
<Parameters>
<Parameter Name="name" Type="System.String" />
</Parameters>
<Docs>
<param name="name">To be added.</param>
<summary>To be added.</summary>
<value>To be added.</value>
<remarks>To be added.</remarks>
<since version=".NET 2.0" />
</Docs>
<AssemblyInfo>
<AssemblyVersion>2.0.0.0</AssemblyVersion>
</AssemblyInfo>
</Member>
<Member MemberName="Keys">
<MemberSignature Language="C#" Value="public System.Collections.Specialized.NameObjectCollectionBase.KeysCollection Keys { get; }" />
<MemberType>Property</MemberType>
<ReturnValue>
<ReturnType>System.Collections.Specialized.NameObjectCollectionBase+KeysCollection</ReturnType>
</ReturnValue>
<Docs>
<value>To be added.</value>
<remarks>To be added.</remarks>
<since version=".NET 2.0" />
<summary>
<attribution license="cc4" from="Microsoft" modified="false" />
<para>Gets a collection of the variable names for all values stored in the collection.</para>
</summary>
</Docs>
<AssemblyInfo>
<AssemblyVersion>2.0.0.0</AssemblyVersion>
</AssemblyInfo>
</Member>
<Member MemberName="Remove">
<MemberSignature Language="C#" Value="public void Remove (string itemName);" />
<MemberType>Method</MemberType>
<ReturnValue>
<ReturnType>System.Void</ReturnType>
</ReturnValue>
<Parameters>
<Parameter Name="itemName" Type="System.String" />
</Parameters>
<Docs>
<param name="itemName">To be added.</param>
<since version=".NET 2.0" />
<remarks>
<attribution license="cc4" from="Microsoft" modified="false" />
<para>In implementing the <see cref="M:System.Web.SessionState.ISessionStateItemCollection.Remove(System.String)" /> method, you should set the <see cref="P:System.Web.SessionState.ISessionStateItemCollection.Dirty" /> property to true to indicate values in the <see cref="T:System.Web.SessionState.ISessionStateItemCollection" /> implementation have been modified.</para>
<para>If the <see cref="T:System.Web.SessionState.ISessionStateItemCollection" /> implementation does not contain an element with the specified <paramref name="name" />, the collection should remain unchanged and no exception be thrown.</para>
</remarks>
<summary>
<attribution license="cc4" from="Microsoft" modified="false" />
<para>Deletes an item from the collection.</para>
</summary>
</Docs>
<AssemblyInfo>
<AssemblyVersion>2.0.0.0</AssemblyVersion>
</AssemblyInfo>
</Member>
<Member MemberName="RemoveAt">
<MemberSignature Language="C#" Value="public void RemoveAt (int index);" />
<MemberType>Method</MemberType>
<ReturnValue>
<ReturnType>System.Void</ReturnType>
</ReturnValue>
<Parameters>
<Parameter Name="index" Type="System.Int32" />
</Parameters>
<Docs>
<since version=".NET 2.0" />
<remarks>
<attribution license="cc4" from="Microsoft" modified="false" />
<para>In implementing the <see cref="M:System.Web.SessionState.ISessionStateItemCollection.RemoveAt(System.Int32)" /> method, you should set the <see cref="P:System.Web.SessionState.ISessionStateItemCollection.Dirty" /> property to true to indicate values in the <see cref="T:System.Web.SessionState.ISessionStateItemCollection" /> implementation have been modified.</para>
<para>Your implementation of the <see cref="M:System.Web.SessionState.ISessionStateItemCollection.RemoveAt(System.Int32)" /> method should throw an <see cref="T:System.ArgumentOutOfRangeException" /> exception if <paramref name="index" /> is less than zero or is equal to or greater than <see cref="P:System.Collections.ICollection.Count" />.</para>
</remarks>
<summary>
<attribution license="cc4" from="Microsoft" modified="false" />
<para>Deletes an item at a specified index from the collection.</para>
</summary>
<param name="index">
<attribution license="cc4" from="Microsoft" modified="false" />The index of the item to remove from the collection.</param>
</Docs>
<AssemblyInfo>
<AssemblyVersion>2.0.0.0</AssemblyVersion>
</AssemblyInfo>
</Member>
</Members>
</Type>

View File

@@ -0,0 +1,160 @@
<?xml version="1.0" encoding="utf-8"?>
<Type Name="IStateRuntime" FullName="System.Web.SessionState.IStateRuntime">
<TypeSignature Language="C#" Maintainer="auto" Value="public interface IStateRuntime" />
<AssemblyInfo>
<AssemblyName>System.Web</AssemblyName>
<AssemblyPublicKey>
</AssemblyPublicKey>
<AssemblyVersion>1.0.5000.0</AssemblyVersion>
<AssemblyVersion>2.0.0.0</AssemblyVersion>
</AssemblyInfo>
<ThreadSafetyStatement>Gtk# is thread aware, but not thread safe; See the &lt;link location="node:gtk-sharp/programming/threads"&gt;Gtk# Thread Programming&lt;/link&gt; for details.</ThreadSafetyStatement>
<Interfaces />
<Attributes>
<Attribute>
<AttributeName>System.Runtime.InteropServices.InterfaceType(System.Runtime.InteropServices.ComInterfaceType.InterfaceIsIUnknown)</AttributeName>
</Attribute>
<Attribute>
<AttributeName>System.Runtime.InteropServices.Guid("7297744b-e188-40bf-b7e9-56698d25cf44")</AttributeName>
</Attribute>
</Attributes>
<Docs>
<remarks>
<attribution license="cc4" from="Microsoft" modified="false" />
<para>ASP.NET can manage session state out-of-process by using a Windows service called the ASP.NET state service. The <see cref="T:System.Web.SessionState.StateRuntime" /> class is used by unmanaged code in this service to manage session data. This class supports the .NET Framework infrastructure implementation of the ASP.NET state service and is not intended be used directly from your code.</para>
<para>Using the ASP.NET state service is not the default method of managing sessionstate in ASP.NET; ASP.NET supports in-process session-state management by default. It also supports a second out-of-process option that manages session state in a Microsoft SQL Server database, and it enables custom session-state management solutions. For more information about session-state storage options, see <format type="text/html"><a href="0bb0a3a3-650f-4c47-a0c5-b08b9b591bb4">Session State Modes</a></format>.</para>
</remarks>
<summary>
<attribution license="cc4" from="Microsoft" modified="false" />
<para>Defines the interface used by the ASP.NET state service to manage session data.</para>
</summary>
</Docs>
<Members>
<Member MemberName="ProcessRequest">
<MemberSignature Language="C#" Value="public void ProcessRequest (IntPtr tracker, int verb, string uri, int exclusive, int timeout, int lockCookieExists, int lockCookie, int contentLength, IntPtr content);" />
<MemberType>Method</MemberType>
<ReturnValue>
<ReturnType>System.Void</ReturnType>
</ReturnValue>
<Parameters>
<Parameter Name="tracker" Type="System.IntPtr" />
<Parameter Name="verb" Type="System.Int32" />
<Parameter Name="uri" Type="System.String" />
<Parameter Name="exclusive" Type="System.Int32" />
<Parameter Name="timeout" Type="System.Int32" />
<Parameter Name="lockCookieExists" Type="System.Int32" />
<Parameter Name="lockCookie" Type="System.Int32" />
<Parameter Name="contentLength" Type="System.Int32" />
<Parameter Name="content" Type="System.IntPtr" />
</Parameters>
<Docs>
<remarks>
<attribution license="cc4" from="Microsoft" modified="false" />
<para>ASP.NET can manage session state out-of-process by using a Windows service called the ASP.NET state service. The <see cref="M:System.Web.SessionState.IStateRuntime.ProcessRequest(System.IntPtr,System.Int32,System.String,System.Int32,System.Int32,System.Int32,System.Int32,System.Int32,System.Int32,System.IntPtr)" /> method is used by unmanaged code in this service to manage the session data.</para>
<para>This member supports the .NET Framework infrastructure implementation of the ASP.NET state service and is not intended be used directly from your code. For more information about session-state storage options, see <format type="text/html"><a href="0bb0a3a3-650f-4c47-a0c5-b08b9b591bb4">Session State Modes</a></format>.</para>
</remarks>
<summary>
<attribution license="cc4" from="Microsoft" modified="false" />
<para>Used by the ASP.NET state server to process session data.</para>
</summary>
<param name="tracker">
<attribution license="cc4" from="Microsoft" modified="false" />An <see cref="T:System.IntPtr" /> pointer to an object stored in the unmanaged ASP.NET state server.</param>
<param name="verb">
<attribution license="cc4" from="Microsoft" modified="false" />The action to take on the object.</param>
<param name="uri">
<attribution license="cc4" from="Microsoft" modified="false" />An identifier for the session.</param>
<param name="exclusive">
<attribution license="cc4" from="Microsoft" modified="false" />The type of access to objects in the store.</param>
<param name="timeout">
<attribution license="cc4" from="Microsoft" modified="false" />The number of minutes the session data is stored.</param>
<param name="lockCookieExists">
<attribution license="cc4" from="Microsoft" modified="false" />A value that indicates whether the lock cookie exists in the original request from the ASP.NET Web server to the ASP.NET state server.</param>
<param name="lockCookie">
<attribution license="cc4" from="Microsoft" modified="false" />The owner of the lock on the session state.</param>
<param name="contentLength">
<attribution license="cc4" from="Microsoft" modified="false" />The length, in bytes, of the data stored for the session.</param>
<param name="content">
<attribution license="cc4" from="Microsoft" modified="false" />An <see cref="T:System.IntPtr" /> pointer to the content stored for the session in the unmanaged ASP.NET state server.</param>
</Docs>
<AssemblyInfo>
<AssemblyVersion>1.0.5000.0</AssemblyVersion>
<AssemblyVersion>2.0.0.0</AssemblyVersion>
</AssemblyInfo>
</Member>
<Member MemberName="ProcessRequest">
<MemberSignature Language="C#" Value="public void ProcessRequest (IntPtr tracker, int verb, string uri, int exclusive, int extraFlags, int timeout, int lockCookieExists, int lockCookie, int contentLength, IntPtr content);" />
<MemberType>Method</MemberType>
<AssemblyInfo>
<AssemblyVersion>2.0.0.0</AssemblyVersion>
</AssemblyInfo>
<ReturnValue>
<ReturnType>System.Void</ReturnType>
</ReturnValue>
<Parameters>
<Parameter Name="tracker" Type="System.IntPtr" />
<Parameter Name="verb" Type="System.Int32" />
<Parameter Name="uri" Type="System.String" />
<Parameter Name="exclusive" Type="System.Int32" />
<Parameter Name="extraFlags" Type="System.Int32" />
<Parameter Name="timeout" Type="System.Int32" />
<Parameter Name="lockCookieExists" Type="System.Int32" />
<Parameter Name="lockCookie" Type="System.Int32" />
<Parameter Name="contentLength" Type="System.Int32" />
<Parameter Name="content" Type="System.IntPtr" />
</Parameters>
<Docs>
<remarks>
<attribution license="cc4" from="Microsoft" modified="false" />
<para>ASP.NET can manage session state out-of-process by using a Windows service called the ASP.NET state service. The <see cref="M:System.Web.SessionState.IStateRuntime.ProcessRequest(System.IntPtr,System.Int32,System.String,System.Int32,System.Int32,System.Int32,System.Int32,System.Int32,System.Int32,System.IntPtr)" /> method is used by unmanaged code in this service to manage the session data.</para>
<para>This member supports the .NET Framework infrastructure implementation of the ASP.NET state service and is not intended be used directly from your code. For more information about session-state storage options, see <format type="text/html"><a href="0bb0a3a3-650f-4c47-a0c5-b08b9b591bb4">Session State Modes</a></format>.</para>
</remarks>
<summary>
<attribution license="cc4" from="Microsoft" modified="false" />
<para>Used by the ASP.NET state server to process session data.</para>
</summary>
<param name="tracker">
<attribution license="cc4" from="Microsoft" modified="false" />An <see cref="T:System.IntPtr" /> pointer to an object stored in the unmanaged ASP.NET state server.</param>
<param name="verb">
<attribution license="cc4" from="Microsoft" modified="false" />The action to take on the object.</param>
<param name="uri">
<attribution license="cc4" from="Microsoft" modified="false" />An identifier for the session.</param>
<param name="exclusive">
<attribution license="cc4" from="Microsoft" modified="false" />The type of access to objects in the store.</param>
<param name="extraFlags">
<attribution license="cc4" from="Microsoft" modified="false" />A value that indicates whether the current session is an uninitialized, cookieless session.</param>
<param name="timeout">
<attribution license="cc4" from="Microsoft" modified="false" />The number of minutes the session data is stored.</param>
<param name="lockCookieExists">
<attribution license="cc4" from="Microsoft" modified="false" />A value that indicates whether the lock cookie exists in the original request from the ASP.NET Web server to the ASP.NET state server.</param>
<param name="lockCookie">
<attribution license="cc4" from="Microsoft" modified="false" />The owner of the lock on the session state.</param>
<param name="contentLength">
<attribution license="cc4" from="Microsoft" modified="false" />The length, in bytes, of the data stored for the session.</param>
<param name="content">
<attribution license="cc4" from="Microsoft" modified="false" />An <see cref="T:System.IntPtr" /> pointer to the content stored for the session in the unmanaged ASP.NET state server.</param>
</Docs>
</Member>
<Member MemberName="StopProcessing">
<MemberSignature Language="C#" Value="public void StopProcessing ();" />
<MemberType>Method</MemberType>
<ReturnValue>
<ReturnType>System.Void</ReturnType>
</ReturnValue>
<Parameters />
<Docs>
<remarks>
<attribution license="cc4" from="Microsoft" modified="false" />
<para>ASP.NET can manage session state out-of-process by using a Windows service called the ASP.NET state service. The <see cref="M:System.Web.SessionState.StateRuntime.StopProcessing" /> method is used by unmanaged code in this service to stop processing the session data. This member is provided to support the .NET Framework infrastructure implementation of the ASP.NET state service and is not intended be used directly from your code. For more information about session-state storage options, see <format type="text/html"><a href="0bb0a3a3-650f-4c47-a0c5-b08b9b591bb4">Session State Modes</a></format>.</para>
</remarks>
<summary>
<attribution license="cc4" from="Microsoft" modified="false" />
<para>Stops the processing of session data stored in ASP.NET state server.</para>
</summary>
</Docs>
<AssemblyInfo>
<AssemblyVersion>1.0.5000.0</AssemblyVersion>
<AssemblyVersion>2.0.0.0</AssemblyVersion>
</AssemblyInfo>
</Member>
</Members>
</Type>

View File

@@ -0,0 +1,317 @@
<?xml version="1.0" encoding="utf-8"?>
<Type Name="SessionIDManager" FullName="System.Web.SessionState.SessionIDManager">
<TypeSignature Language="C#" Value="public class SessionIDManager : System.Web.SessionState.ISessionIDManager" />
<AssemblyInfo>
<AssemblyName>System.Web</AssemblyName>
<AssemblyVersion>2.0.0.0</AssemblyVersion>
</AssemblyInfo>
<Base>
<BaseTypeName>System.Object</BaseTypeName>
</Base>
<Interfaces>
<Interface>
<InterfaceName>System.Web.SessionState.ISessionIDManager</InterfaceName>
</Interface>
</Interfaces>
<Docs>
<remarks>
<attribution license="cc4" from="Microsoft" modified="false" />
<para>The <see cref="T:System.Web.SessionState.SessionIDManager" /> class is an HTTP module that manages unique session identifiers for use with ASP.NET session state. The unique identifier for an ASP.NET session is the <see cref="P:System.Web.SessionState.HttpSessionState.SessionID" /> property, which can be accessed from the <see cref="P:System.Web.HttpContext.Session" /> property of the current <see cref="T:System.Web.HttpContext" /> or <see cref="T:System.Web.UI.Page" />. The ASP.NET session identifier is a randomly generated number encoded into a 24-character string consisting of lowercase characters from a to z and numbers from 0 to 5.</para>
<para>By default, the <see cref="P:System.Web.SessionState.HttpSessionState.SessionID" /> value is sent in a cookie with each request to the ASP.NET application. The name of the cookie that contains the <see cref="P:System.Web.SessionState.HttpSessionState.SessionID" /> value is ASP.NET_SessionId by default. You can configure a different cookie name by setting the cookieName attribute of the <format type="text/html"><a href="bda6fb8c-0076-43e3-9ce2-8cf1f8bdaa7d">sessionState Element (ASP.NET Settings Schema)</a></format> to the desired cookie name.</para>
<para>If you want to disable the use of cookies in your ASP.NET application and still make use of session state, you can configure your application to store the session identifier in the URL instead of a cookie by setting the cookieless attribute of the sessionState element to true in the Web.config file for your application. For more information, see the <see cref="P:System.Web.SessionState.HttpSessionStateContainer.IsCookieless" /> property.</para>
</remarks>
<summary>
<attribution license="cc4" from="Microsoft" modified="false" />
<para>Manages unique identifiers for ASP.NET session state.</para>
</summary>
</Docs>
<Members>
<Member MemberName=".ctor">
<MemberSignature Language="C#" Value="public SessionIDManager ();" />
<MemberType>Constructor</MemberType>
<AssemblyInfo>
<AssemblyVersion>2.0.0.0</AssemblyVersion>
</AssemblyInfo>
<Parameters />
<Docs>
<remarks>
<attribution license="cc4" from="Microsoft" modified="false" />
<para>This constructor is not intended to be called from application code.</para>
<para>ASP.NET calls this constructor to create an instance of the <see cref="T:System.Web.SessionState.SessionIDManager" /> class. After calling the constructor, ASP.NET calls the <see cref="M:System.Web.SessionState.SessionIDManager.Initialize" /> method to initialize the new <see cref="T:System.Web.SessionState.SessionIDManager" /> object.</para>
</remarks>
<summary>
<attribution license="cc4" from="Microsoft" modified="false" />
<para>Creates an instance of the <see cref="T:System.Web.SessionState.SessionIDManager" /> class.</para>
</summary>
</Docs>
</Member>
<Member MemberName="CreateSessionID">
<MemberSignature Language="C#" Value="public virtual string CreateSessionID (System.Web.HttpContext context);" />
<MemberType>Method</MemberType>
<AssemblyInfo>
<AssemblyVersion>2.0.0.0</AssemblyVersion>
</AssemblyInfo>
<ReturnValue>
<ReturnType>System.String</ReturnType>
</ReturnValue>
<Parameters>
<Parameter Name="context" Type="System.Web.HttpContext" />
</Parameters>
<Docs>
<remarks>
<attribution license="cc4" from="Microsoft" modified="false" />
<para>This method is not intended to be called from application code.</para>
<para>The <see cref="M:System.Web.SessionState.SessionIDManager.CreateSessionID(System.Web.HttpContext)" /> method returns a unique session identifier that is a randomly generated number encoded into a 24-character string consisting of lowercase characters from a to z and numbers from 0 to 5.</para>
</remarks>
<summary>
<attribution license="cc4" from="Microsoft" modified="false" />
<para>Creates a unique session identifier for the session.</para>
</summary>
<returns>
<attribution license="cc4" from="Microsoft" modified="false" />
<para>A unique session identifier.</para>
</returns>
<param name="context">
<attribution license="cc4" from="Microsoft" modified="false" />The current <see cref="T:System.Web.HttpContext" /> object that references server objects used to process HTTP requests (for example, the <see cref="P:System.Web.HttpContext.Request" /> and <see cref="P:System.Web.HttpContext.Response" /> properties).</param>
</Docs>
</Member>
<Member MemberName="Decode">
<MemberSignature Language="C#" Value="public virtual string Decode (string id);" />
<MemberType>Method</MemberType>
<AssemblyInfo>
<AssemblyVersion>2.0.0.0</AssemblyVersion>
</AssemblyInfo>
<ReturnValue>
<ReturnType>System.String</ReturnType>
</ReturnValue>
<Parameters>
<Parameter Name="id" Type="System.String" />
</Parameters>
<Docs>
<remarks>
<attribution license="cc4" from="Microsoft" modified="false" />
<para>This method is not intended to be called from application code.</para>
<para>This method is used internally by the <see cref="T:System.Web.SessionState.SessionIDManager" /> class to decode custom <see cref="P:System.Web.SessionState.HttpSessionState.SessionID" /> values created by classes that inherit the <see cref="T:System.Web.SessionState.SessionIDManager" /> class and override the <see cref="M:System.Web.SessionState.SessionIDManager.CreateSessionID(System.Web.HttpContext)" /> and <see cref="M:System.Web.SessionState.SessionIDManager.Validate(System.String)" /> methods. To ensure the fidelity of a custom session-identifier value retrieved from the HTTP request by the <see cref="M:System.Web.SessionState.SessionIDManager.GetSessionID(System.Web.HttpContext)" /> method, the <see cref="T:System.Web.SessionState.SessionIDManager" /> decodes the custom value using the <see cref="Overload:System.Web.HttpUtility.UrlDecode" /> method.</para>
</remarks>
<summary>
<attribution license="cc4" from="Microsoft" modified="false" />
<para>Decodes a URL-encoded session identifier obtained from a cookie or the URL.</para>
</summary>
<returns>
<attribution license="cc4" from="Microsoft" modified="false" />
<para>The decoded session identifier.</para>
</returns>
<param name="id">
<attribution license="cc4" from="Microsoft" modified="false" />The session identifier to decode. </param>
</Docs>
</Member>
<Member MemberName="Encode">
<MemberSignature Language="C#" Value="public virtual string Encode (string id);" />
<MemberType>Method</MemberType>
<AssemblyInfo>
<AssemblyVersion>2.0.0.0</AssemblyVersion>
</AssemblyInfo>
<ReturnValue>
<ReturnType>System.String</ReturnType>
</ReturnValue>
<Parameters>
<Parameter Name="id" Type="System.String" />
</Parameters>
<Docs>
<remarks>
<attribution license="cc4" from="Microsoft" modified="false" />
<para>This method is not intended to be called from application code.</para>
<para>This method is used internally by the <see cref="T:System.Web.SessionState.SessionIDManager" /> class to encode custom <see cref="P:System.Web.SessionState.HttpSessionState.SessionID" /> values created by classes that inherit the <see cref="T:System.Web.SessionState.SessionIDManager" /> class and override the <see cref="M:System.Web.SessionState.SessionIDManager.CreateSessionID(System.Web.HttpContext)" /> and <see cref="M:System.Web.SessionState.SessionIDManager.Validate(System.String)" /> methods. To ensure the fidelity of a custom session-identifier value stored in the HTTP response by the <see cref="M:System.Web.SessionState.SessionIDManager.SaveSessionID(System.Web.HttpContext,System.String,System.Boolean@,System.Boolean@)" /> method, the <see cref="T:System.Web.SessionState.SessionIDManager" /> encodes the custom value using the <see cref="Overload:System.Web.HttpUtility.UrlEncode" /> method.</para>
<para>For an example of a class that inherits the <see cref="T:System.Web.SessionState.SessionIDManager" /> class and overrides the <see cref="M:System.Web.SessionState.SessionIDManager.CreateSessionID(System.Web.HttpContext)" /> and <see cref="M:System.Web.SessionState.SessionIDManager.Validate(System.String)" /> methods, see the <see cref="M:System.Web.SessionState.SessionIDManager.CreateSessionID(System.Web.HttpContext)" /> method.</para>
</remarks>
<summary>
<attribution license="cc4" from="Microsoft" modified="false" />
<para>Encodes the session identifier for saving to either a cookie or the URL.</para>
</summary>
<returns>
<attribution license="cc4" from="Microsoft" modified="false" />
<para>The encoded session identifier.</para>
</returns>
<param name="id">
<attribution license="cc4" from="Microsoft" modified="false" />The session identifier to encode. </param>
</Docs>
</Member>
<Member MemberName="GetSessionID">
<MemberSignature Language="C#" Value="public string GetSessionID (System.Web.HttpContext context);" />
<MemberType>Method</MemberType>
<AssemblyInfo>
<AssemblyVersion>2.0.0.0</AssemblyVersion>
</AssemblyInfo>
<ReturnValue>
<ReturnType>System.String</ReturnType>
</ReturnValue>
<Parameters>
<Parameter Name="context" Type="System.Web.HttpContext" />
</Parameters>
<Docs>
<remarks>
<attribution license="cc4" from="Microsoft" modified="false" />
<para>This method is not intended to be called from application code.</para>
<para>The <see cref="T:System.Web.SessionState.SessionStateModule" /> calls the <see cref="M:System.Web.SessionState.SessionIDManager.GetSessionID(System.Web.HttpContext)" /> method during the <see cref="E:System.Web.HttpApplication.AcquireRequestState" /> event to retrieve the <see cref="P:System.Web.SessionState.HttpSessionState.SessionID" /> from the current <see cref="T:System.Web.HttpRequest" />.</para>
</remarks>
<summary>
<attribution license="cc4" from="Microsoft" modified="false" />
<para>Gets the session-identifier value from the current Web request.</para>
</summary>
<returns>
<attribution license="cc4" from="Microsoft" modified="false" />
<para>The current <see cref="P:System.Web.SessionState.HttpSessionState.SessionID" />.</para>
</returns>
<param name="context">
<attribution license="cc4" from="Microsoft" modified="false" />The current <see cref="T:System.Web.HttpContext" /> object that references server objects used to process HTTP requests (for example, the <see cref="P:System.Web.HttpContext.Request" /> and <see cref="P:System.Web.HttpContext.Response" /> properties).</param>
</Docs>
</Member>
<Member MemberName="Initialize">
<MemberSignature Language="C#" Value="public void Initialize ();" />
<MemberType>Method</MemberType>
<AssemblyInfo>
<AssemblyVersion>2.0.0.0</AssemblyVersion>
</AssemblyInfo>
<ReturnValue>
<ReturnType>System.Void</ReturnType>
</ReturnValue>
<Parameters />
<Docs>
<remarks>
<attribution license="cc4" from="Microsoft" modified="false" />
<para>The <see cref="M:System.Web.SessionState.SessionIDManager.Initialize" /> method reads the session configuration data from the <format type="text/html"><a href="bda6fb8c-0076-43e3-9ce2-8cf1f8bdaa7d">sessionState</a></format> configuration element of the configuration files.</para>
</remarks>
<summary>
<attribution license="cc4" from="Microsoft" modified="false" />
<para>Initializes the <see cref="T:System.Web.SessionState.SessionIDManager" /> object with information from configuration files.</para>
</summary>
</Docs>
</Member>
<Member MemberName="InitializeRequest">
<MemberSignature Language="C#" Value="public bool InitializeRequest (System.Web.HttpContext context, bool suppressAutoDetectRedirect, out bool supportSessionIDReissue);" />
<MemberType>Method</MemberType>
<AssemblyInfo>
<AssemblyVersion>2.0.0.0</AssemblyVersion>
</AssemblyInfo>
<ReturnValue>
<ReturnType>System.Boolean</ReturnType>
</ReturnValue>
<Parameters>
<Parameter Name="context" Type="System.Web.HttpContext" />
<Parameter Name="suppressAutoDetectRedirect" Type="System.Boolean" />
<Parameter Name="supportSessionIDReissue" Type="System.Boolean&amp;" RefType="out" />
</Parameters>
<Docs>
<param name="context">To be added.</param>
<param name="suppressAutoDetectRedirect">To be added.</param>
<param name="supportSessionIDReissue">To be added.</param>
<summary>To be added.</summary>
<returns>To be added.</returns>
<remarks>To be added.</remarks>
</Docs>
</Member>
<Member MemberName="RemoveSessionID">
<MemberSignature Language="C#" Value="public void RemoveSessionID (System.Web.HttpContext context);" />
<MemberType>Method</MemberType>
<AssemblyInfo>
<AssemblyVersion>2.0.0.0</AssemblyVersion>
</AssemblyInfo>
<ReturnValue>
<ReturnType>System.Void</ReturnType>
</ReturnValue>
<Parameters>
<Parameter Name="context" Type="System.Web.HttpContext" />
</Parameters>
<Docs>
<remarks>
<attribution license="cc4" from="Microsoft" modified="false" />
<para>This method is not intended to be called from application code.</para>
<para>The <see cref="T:System.Web.SessionState.SessionStateModule" /> calls the <see cref="M:System.Web.SessionState.SessionIDManager.RemoveSessionID(System.Web.HttpContext)" /> method during the <see cref="E:System.Web.HttpApplication.ReleaseRequestState" /> event to remove the session identifier from the <see cref="P:System.Web.HttpResponse.Cookies" /> collection of the <see cref="T:System.Web.HttpResponse" /> if a new session was created but was not used.</para>
</remarks>
<summary>
<attribution license="cc4" from="Microsoft" modified="false" />
<para>Deletes the session-identifier cookie from the HTTP response.</para>
</summary>
<param name="context">
<attribution license="cc4" from="Microsoft" modified="false" />The current <see cref="T:System.Web.HttpContext" /> object that references server objects used to process HTTP requests (for example, the <see cref="P:System.Web.HttpContext.Request" /> and <see cref="P:System.Web.HttpContext.Response" /> properties).</param>
</Docs>
</Member>
<Member MemberName="SaveSessionID">
<MemberSignature Language="C#" Value="public void SaveSessionID (System.Web.HttpContext context, string id, out bool redirected, out bool cookieAdded);" />
<MemberType>Method</MemberType>
<AssemblyInfo>
<AssemblyVersion>2.0.0.0</AssemblyVersion>
</AssemblyInfo>
<ReturnValue>
<ReturnType>System.Void</ReturnType>
</ReturnValue>
<Parameters>
<Parameter Name="context" Type="System.Web.HttpContext" />
<Parameter Name="id" Type="System.String" />
<Parameter Name="redirected" Type="System.Boolean&amp;" RefType="out" />
<Parameter Name="cookieAdded" Type="System.Boolean&amp;" RefType="out" />
</Parameters>
<Docs>
<param name="context">To be added.</param>
<param name="id">To be added.</param>
<param name="redirected">To be added.</param>
<param name="cookieAdded">To be added.</param>
<summary>To be added.</summary>
<remarks>To be added.</remarks>
</Docs>
</Member>
<Member MemberName="SessionIDMaxLength">
<MemberSignature Language="C#" Value="public static int SessionIDMaxLength { get; }" />
<MemberType>Property</MemberType>
<AssemblyInfo>
<AssemblyVersion>2.0.0.0</AssemblyVersion>
</AssemblyInfo>
<ReturnValue>
<ReturnType>System.Int32</ReturnType>
</ReturnValue>
<Docs>
<value>To be added.</value>
<remarks>
<attribution license="cc4" from="Microsoft" modified="false" />
<para>The maximum length of a session identifier is 80 characters.</para>
<para>While session identifiers created by the <see cref="M:System.Web.SessionState.SessionIDManager.CreateSessionID(System.Web.HttpContext)" /> method are 24 characters long, the maximum length of a session identifier allowed by the <see cref="T:System.Web.SessionState.SessionIDManager" /> class is 80 characters. This is especially important if you implement a custom <see cref="T:System.Web.SessionState.SessionIDManager" />. The <see cref="M:System.Web.SessionState.SessionIDManager.GetSessionID(System.Web.HttpContext)" /> method, which retrieves session-identifier values from the current <see cref="T:System.Web.HttpRequest" />, ensures that values do not exceed the <see cref="P:System.Web.SessionState.SessionIDManager.SessionIDMaxLength" /> value and that the session identifier is a 24-character string containing only the lowercase characters a to z and the numbers 0 to 5 by calling the <see cref="M:System.Web.SessionState.SessionIDManager.Validate(System.String)" /> method. If you implement a custom <see cref="T:System.Web.SessionState.SessionIDManager" /> class that inherits the <see cref="T:System.Web.SessionState.SessionIDManager" /> class and overrides the <see cref="M:System.Web.SessionState.SessionIDManager.CreateSessionID(System.Web.HttpContext)" /> method but not the <see cref="M:System.Web.SessionState.SessionIDManager.Validate(System.String)" /> method, your custom session-identifier values must meet the constraints above. For an example of overriding the <see cref="T:System.Web.SessionState.SessionIDManager" /> class and implementing these methods, see the example provided for the <see cref="M:System.Web.SessionState.SessionIDManager.CreateSessionID(System.Web.HttpContext)" /> method.</para>
</remarks>
<summary>
<attribution license="cc4" from="Microsoft" modified="false" />
<para>Gets the maximum length of a valid session identifier.</para>
</summary>
</Docs>
</Member>
<Member MemberName="Validate">
<MemberSignature Language="C#" Value="public virtual bool Validate (string id);" />
<MemberType>Method</MemberType>
<AssemblyInfo>
<AssemblyVersion>2.0.0.0</AssemblyVersion>
</AssemblyInfo>
<ReturnValue>
<ReturnType>System.Boolean</ReturnType>
</ReturnValue>
<Parameters>
<Parameter Name="id" Type="System.String" />
</Parameters>
<Docs>
<remarks>
<attribution license="cc4" from="Microsoft" modified="false" />
<para>This method is not intended to be called from application code.</para>
<para>The <see cref="M:System.Web.SessionState.SessionIDManager.Validate(System.String)" /> method verifies that the supplied <paramref name="id" /> is a 24-character string consisting of lowercase characters from a to z and numbers from 0 to 5 and that the maximum length of the session ID does not exceed 80 characters.</para>
<para>The <see cref="M:System.Web.SessionState.SessionIDManager.GetSessionID(System.Web.HttpContext)" /> method calls the <see cref="M:System.Web.SessionState.SessionIDManager.Validate(System.String)" /> method when retrieving a session identifier from an HTTP request, to ensure that the supplied session identifier is properly formatted.</para>
</remarks>
<summary>
<attribution license="cc4" from="Microsoft" modified="false" />
<para>Gets a value indicating whether a session identifier is valid.</para>
</summary>
<returns>
<attribution license="cc4" from="Microsoft" modified="false" />
<para>true if the session identifier is valid; otherwise, false.</para>
</returns>
<param name="id">
<attribution license="cc4" from="Microsoft" modified="false" />The session identifier to validate. </param>
</Docs>
</Member>
</Members>
</Type>

View File

@@ -0,0 +1,58 @@
<?xml version="1.0" encoding="utf-8"?>
<Type Name="SessionStateActions" FullName="System.Web.SessionState.SessionStateActions">
<TypeSignature Language="C#" Value="public enum SessionStateActions" />
<AssemblyInfo>
<AssemblyName>System.Web</AssemblyName>
<AssemblyVersion>2.0.0.0</AssemblyVersion>
</AssemblyInfo>
<Base>
<BaseTypeName>System.Enum</BaseTypeName>
</Base>
<Docs>
<since version=".NET 2.0" />
<remarks>
<attribution license="cc4" from="Microsoft" modified="false" />
<para>The <see cref="T:System.Web.SessionState.SessionStateActions" /> enumeration is used by the <see cref="M:System.Web.SessionState.SessionStateStoreProviderBase.GetItem(System.Web.HttpContext,System.String,System.Boolean@,System.TimeSpan@,System.Object@,System.Web.SessionState.SessionStateActions@)" /> and <see cref="M:System.Web.SessionState.SessionStateStoreProviderBase.GetItemExclusive(System.Web.HttpContext,System.String,System.Boolean@,System.TimeSpan@,System.Object@,System.Web.SessionState.SessionStateActions@)" /> methods of a <see cref="T:System.Web.SessionState.SessionStateStoreProviderBase" /> implementation. When a session item is retrieved from the data store, the enumeration value indicates whether the session requires initialization or not based on a value stored with the data. The <see cref="M:System.Web.SessionState.SessionStateStoreProviderBase.GetItem(System.Web.HttpContext,System.String,System.Boolean@,System.TimeSpan@,System.Object@,System.Web.SessionState.SessionStateActions@)" /> and <see cref="M:System.Web.SessionState.SessionStateStoreProviderBase.GetItemExclusive(System.Web.HttpContext,System.String,System.Boolean@,System.TimeSpan@,System.Object@,System.Web.SessionState.SessionStateActions@)" /> methods set an <paramref name="actions" /> parameter to a <see cref="T:System.Web.SessionState.SessionStateActions" /> enumeration value based on this value retrieved with the session item. If the value of the <paramref name="actions" /> parameter is set to <see cref="F:System.Web.SessionState.SessionStateActions.InitializeItem" />, the <see cref="T:System.Web.SessionState.SessionStateModule" /> initializes the session and executes the Session_OnStart event defined in the Global.asax file for the ASP.NET application. If the value of the <paramref name="actions" /> parameter is <see cref="F:System.Web.SessionState.SessionStateActions.None" />, no additional steps are taken for the current session.</para>
<para>A session item created by the <see cref="M:System.Web.SessionState.SessionStateStoreProviderBase.CreateUninitializedItem(System.Web.HttpContext,System.String,System.Int32)" /> method is created with a value indicating that the item requires initialization and that the <see cref="M:System.Web.SessionState.SessionStateStoreProviderBase.GetItem(System.Web.HttpContext,System.String,System.Boolean@,System.TimeSpan@,System.Object@,System.Web.SessionState.SessionStateActions@)" /> and <see cref="M:System.Web.SessionState.SessionStateStoreProviderBase.GetItemExclusive(System.Web.HttpContext,System.String,System.Boolean@,System.TimeSpan@,System.Object@,System.Web.SessionState.SessionStateActions@)" /> methods should set the <paramref name="actions" /> parameter to <see cref="F:System.Web.SessionState.SessionStateActions.InitializeItem" />.</para>
</remarks>
<summary>
<attribution license="cc4" from="Microsoft" modified="false" />
<para>Identifies whether a session item from a data store is for a session that requires initialization.</para>
</summary>
</Docs>
<Members>
<Member MemberName="InitializeItem">
<MemberSignature Language="C#" Value="InitializeItem" />
<MemberType>Field</MemberType>
<ReturnValue>
<ReturnType>System.Web.SessionState.SessionStateActions</ReturnType>
</ReturnValue>
<Docs>
<since version=".NET 2.0" />
<summary>
<attribution license="cc4" from="Microsoft" modified="false" />
<para>The session item from the data store is for a session that requires initialization.</para>
</summary>
</Docs>
<AssemblyInfo>
<AssemblyVersion>2.0.0.0</AssemblyVersion>
</AssemblyInfo>
</Member>
<Member MemberName="None">
<MemberSignature Language="C#" Value="None" />
<MemberType>Field</MemberType>
<AssemblyInfo>
<AssemblyVersion>2.0.0.0</AssemblyVersion>
</AssemblyInfo>
<ReturnValue>
<ReturnType>System.Web.SessionState.SessionStateActions</ReturnType>
</ReturnValue>
<Docs>
<summary>
<attribution license="cc4" from="Microsoft" modified="false" />
<para>No initialization actions need to be performed by the calling code.</para>
</summary>
</Docs>
</Member>
</Members>
</Type>

View File

@@ -0,0 +1,275 @@
<?xml version="1.0" encoding="utf-8"?>
<Type Name="SessionStateItemCollection" FullName="System.Web.SessionState.SessionStateItemCollection">
<TypeSignature Language="C#" Value="public sealed class SessionStateItemCollection : System.Collections.Specialized.NameObjectCollectionBase, System.Web.SessionState.ISessionStateItemCollection" />
<AssemblyInfo>
<AssemblyName>System.Web</AssemblyName>
<AssemblyVersion>2.0.0.0</AssemblyVersion>
</AssemblyInfo>
<Base>
<BaseTypeName>System.Collections.Specialized.NameObjectCollectionBase</BaseTypeName>
</Base>
<Interfaces>
<Interface>
<InterfaceName>System.Web.SessionState.ISessionStateItemCollection</InterfaceName>
</Interface>
</Interfaces>
<Docs>
<remarks>
<attribution license="cc4" from="Microsoft" modified="false" />
<para>The <see cref="T:System.Web.SessionState.SessionStateItemCollection" /> class is used to manage session-state variable values indexed by a variable name or by numerical index. The session-state variables are exposed to ASP.NET application code using the <see cref="T:System.Web.SessionState.HttpSessionState" /> class, which is accessed using the <see cref="P:System.Web.HttpContext.Session" /> property of the current <see cref="T:System.Web.HttpContext" /> or the <see cref="T:System.Web.UI.Page" />. The <see cref="T:System.Web.SessionState.HttpSessionState" /> class calls the <see cref="T:System.Web.SessionState.HttpSessionStateContainer" /> class, which manages session-state variable values using the <see cref="T:System.Web.SessionState.SessionStateItemCollection" />.</para>
</remarks>
<summary>
<attribution license="cc4" from="Microsoft" modified="false" />
<para>A collection of objects stored in session state. This class cannot be inherited.</para>
</summary>
</Docs>
<Members>
<Member MemberName=".ctor">
<MemberSignature Language="C#" Value="public SessionStateItemCollection ();" />
<MemberType>Constructor</MemberType>
<AssemblyInfo>
<AssemblyVersion>2.0.0.0</AssemblyVersion>
</AssemblyInfo>
<Parameters />
<Docs>
<remarks>
<attribution license="cc4" from="Microsoft" modified="false" />
<para>The <see cref="T:System.Web.SessionState.SessionStateItemCollection" /> class is used to manage session-state variable values indexed by a variable name or by numerical index. The session-state variables are exposed to ASP.NET application code using the <see cref="T:System.Web.SessionState.HttpSessionState" /> class, which is accessed using the <see cref="P:System.Web.HttpContext.Session" /> property of the current <see cref="T:System.Web.HttpContext" /> or the <see cref="T:System.Web.UI.Page" />. The <see cref="T:System.Web.SessionState.HttpSessionState" /> class calls the <see cref="T:System.Web.SessionState.HttpSessionStateContainer" /> class, which manages session-state variable values using the <see cref="T:System.Web.SessionState.SessionStateItemCollection" /> collection.</para>
</remarks>
<summary>
<attribution license="cc4" from="Microsoft" modified="false" />
<para>Creates a new, empty <see cref="T:System.Web.SessionState.SessionStateItemCollection" /> object.</para>
</summary>
</Docs>
</Member>
<Member MemberName="Clear">
<MemberSignature Language="C#" Value="public void Clear ();" />
<MemberType>Method</MemberType>
<AssemblyInfo>
<AssemblyVersion>2.0.0.0</AssemblyVersion>
</AssemblyInfo>
<ReturnValue>
<ReturnType>System.Void</ReturnType>
</ReturnValue>
<Parameters />
<Docs>
<remarks>To be added.</remarks>
<summary>
<attribution license="cc4" from="Microsoft" modified="false" />
<para>Removes all values and keys from the session-state collection.</para>
</summary>
</Docs>
</Member>
<Member MemberName="Deserialize">
<MemberSignature Language="C#" Value="public static System.Web.SessionState.SessionStateItemCollection Deserialize (System.IO.BinaryReader reader);" />
<MemberType>Method</MemberType>
<AssemblyInfo>
<AssemblyVersion>2.0.0.0</AssemblyVersion>
</AssemblyInfo>
<ReturnValue>
<ReturnType>System.Web.SessionState.SessionStateItemCollection</ReturnType>
</ReturnValue>
<Parameters>
<Parameter Name="reader" Type="System.IO.BinaryReader" />
</Parameters>
<Docs>
<remarks>
<attribution license="cc4" from="Microsoft" modified="false" />
<para>The <see cref="M:System.Web.SessionState.SessionStateItemCollection.Deserialize(System.IO.BinaryReader)" /> method can be used to read the contents of a <see cref="T:System.Web.SessionState.SessionStateItemCollection" /> collection from the session store.</para>
<para>To write the contents of a <see cref="T:System.Web.SessionState.SessionStateItemCollection" /> object to the session store, use the <see cref="M:System.Web.SessionState.SessionStateItemCollection.Serialize(System.IO.BinaryWriter)" /> method.</para>
</remarks>
<summary>
<attribution license="cc4" from="Microsoft" modified="false" />
<para>Creates a <see cref="T:System.Web.SessionState.SessionStateItemCollection" /> collection from a storage location that is written to using the <see cref="M:System.Web.SessionState.SessionStateItemCollection.Serialize(System.IO.BinaryWriter)" /> method.</para>
</summary>
<returns>
<attribution license="cc4" from="Microsoft" modified="false" />
<para>A <see cref="T:System.Web.SessionState.SessionStateItemCollection" /> collection populated with the contents from a storage location that is written to using the <see cref="M:System.Web.SessionState.SessionStateItemCollection.Serialize(System.IO.BinaryWriter)" /> method.</para>
</returns>
<param name="reader">
<attribution license="cc4" from="Microsoft" modified="false" />The <see cref="T:System.IO.BinaryReader" /> used to read the serialized collection from a stream or encoded string.</param>
</Docs>
</Member>
<Member MemberName="Dirty">
<MemberSignature Language="C#" Value="public bool Dirty { set; get; }" />
<MemberType>Property</MemberType>
<AssemblyInfo>
<AssemblyVersion>2.0.0.0</AssemblyVersion>
</AssemblyInfo>
<ReturnValue>
<ReturnType>System.Boolean</ReturnType>
</ReturnValue>
<Docs>
<value>To be added.</value>
<remarks>
<attribution license="cc4" from="Microsoft" modified="false" />
<para>The <see cref="P:System.Web.SessionState.SessionStateItemCollection.Dirty" /> property is used to indicate whether the contents of the <see cref="T:System.Web.SessionState.SessionStateItemCollection" /> collection have changed.</para>
<para>The <see cref="P:System.Web.SessionState.SessionStateItemCollection.Dirty" /> property is set to true when an object value is set or added to the collection using the <see cref="Overload:System.Web.SessionState.SessionStateItemCollection.Item" /> property and when one or more object values are removed from the collection using the <see cref="M:System.Web.SessionState.SessionStateItemCollection.Remove(System.String)" />, <see cref="M:System.Web.SessionState.SessionStateItemCollection.RemoveAt(System.Int32)" />, or <see cref="M:System.Web.SessionState.SessionStateItemCollection.Clear" /> methods.</para>
<para>The <see cref="P:System.Web.SessionState.SessionStateItemCollection.Dirty" /> property is also set to true when a mutable object is retrieved from the collection using the <see cref="Overload:System.Web.SessionState.SessionStateItemCollection.Item" /> property. </para>
<para>Calling the <see cref="M:System.Web.SessionState.SessionStateItemCollection.Deserialize(System.IO.BinaryReader)" /> method to populate a <see cref="T:System.Web.SessionState.SessionStateItemCollection" /> collection results in the <see cref="P:System.Web.SessionState.SessionStateItemCollection.Dirty" /> property being set to false.</para>
</remarks>
<summary>
<attribution license="cc4" from="Microsoft" modified="false" />
<para>Gets or sets a value indicating whether the collection has been marked as changed.</para>
</summary>
</Docs>
</Member>
<Member MemberName="GetEnumerator">
<MemberSignature Language="C#" Value="public override System.Collections.IEnumerator GetEnumerator ();" />
<MemberType>Method</MemberType>
<AssemblyInfo>
<AssemblyVersion>2.0.0.0</AssemblyVersion>
</AssemblyInfo>
<ReturnValue>
<ReturnType>System.Collections.IEnumerator</ReturnType>
</ReturnValue>
<Parameters />
<Docs>
<remarks>To be added.</remarks>
<summary>
<attribution license="cc4" from="Microsoft" modified="false" />
<para>Returns an enumerator that can be used to read all the key names in the collection.</para>
</summary>
<returns>
<attribution license="cc4" from="Microsoft" modified="false" />
<para>An <see cref="T:System.Collections.IEnumerator" /> that can iterate through the variable names in the session-state collection.</para>
</returns>
</Docs>
</Member>
<Member MemberName="Item">
<MemberSignature Language="C#" Value="public object this[int index] { set; get; }" />
<MemberType>Property</MemberType>
<AssemblyInfo>
<AssemblyVersion>2.0.0.0</AssemblyVersion>
</AssemblyInfo>
<ReturnValue>
<ReturnType>System.Object</ReturnType>
</ReturnValue>
<Parameters>
<Parameter Name="index" Type="System.Int32" />
</Parameters>
<Docs>
<param name="index">To be added.</param>
<summary>To be added.</summary>
<value>To be added.</value>
<remarks>To be added.</remarks>
</Docs>
</Member>
<Member MemberName="Item">
<MemberSignature Language="C#" Value="public object this[string name] { set; get; }" />
<MemberType>Property</MemberType>
<AssemblyInfo>
<AssemblyVersion>2.0.0.0</AssemblyVersion>
</AssemblyInfo>
<ReturnValue>
<ReturnType>System.Object</ReturnType>
</ReturnValue>
<Parameters>
<Parameter Name="name" Type="System.String" />
</Parameters>
<Docs>
<param name="name">To be added.</param>
<summary>To be added.</summary>
<value>To be added.</value>
<remarks>To be added.</remarks>
</Docs>
</Member>
<Member MemberName="Keys">
<MemberSignature Language="C#" Value="public override System.Collections.Specialized.NameObjectCollectionBase.KeysCollection Keys { get; }" />
<MemberType>Property</MemberType>
<AssemblyInfo>
<AssemblyVersion>2.0.0.0</AssemblyVersion>
</AssemblyInfo>
<ReturnValue>
<ReturnType>System.Collections.Specialized.NameObjectCollectionBase+KeysCollection</ReturnType>
</ReturnValue>
<Docs>
<value>To be added.</value>
<remarks>
<attribution license="cc4" from="Microsoft" modified="false" />
<para>Each key is a string that represents a variable name for a value stored in the collection.</para>
</remarks>
<summary>
<attribution license="cc4" from="Microsoft" modified="false" />
<para>Gets a collection of the variable names for all values stored in the collection.</para>
</summary>
</Docs>
</Member>
<Member MemberName="Remove">
<MemberSignature Language="C#" Value="public void Remove (string name);" />
<MemberType>Method</MemberType>
<AssemblyInfo>
<AssemblyVersion>2.0.0.0</AssemblyVersion>
</AssemblyInfo>
<ReturnValue>
<ReturnType>System.Void</ReturnType>
</ReturnValue>
<Parameters>
<Parameter Name="name" Type="System.String" />
</Parameters>
<Docs>
<remarks>
<attribution license="cc4" from="Microsoft" modified="false" />
<para>If the <see cref="T:System.Web.SessionState.SessionStateItemCollection" /> collection does not contain an element with the specified <paramref name="name" />, the collection remains unchanged. No exception is thrown.</para>
</remarks>
<summary>
<attribution license="cc4" from="Microsoft" modified="false" />
<para>Deletes an item from the collection.</para>
</summary>
<param name="name">
<attribution license="cc4" from="Microsoft" modified="false" />The name of the item to delete from the collection. </param>
</Docs>
</Member>
<Member MemberName="RemoveAt">
<MemberSignature Language="C#" Value="public void RemoveAt (int index);" />
<MemberType>Method</MemberType>
<AssemblyInfo>
<AssemblyVersion>2.0.0.0</AssemblyVersion>
</AssemblyInfo>
<ReturnValue>
<ReturnType>System.Void</ReturnType>
</ReturnValue>
<Parameters>
<Parameter Name="index" Type="System.Int32" />
</Parameters>
<Docs>
<remarks>
<attribution license="cc4" from="Microsoft" modified="false" />
<para>If the <see cref="T:System.Web.SessionState.SessionStateItemCollection" /> collection does not contain an element with the specified <paramref name="name" />, the collection remains unchanged. No exception is thrown.</para>
</remarks>
<summary>
<attribution license="cc4" from="Microsoft" modified="false" />
<para>Deletes an item at a specified index from the collection.</para>
</summary>
<param name="index">
<attribution license="cc4" from="Microsoft" modified="false" />The index of the item to remove from the collection. </param>
</Docs>
</Member>
<Member MemberName="Serialize">
<MemberSignature Language="C#" Value="public void Serialize (System.IO.BinaryWriter writer);" />
<MemberType>Method</MemberType>
<AssemblyInfo>
<AssemblyVersion>2.0.0.0</AssemblyVersion>
</AssemblyInfo>
<ReturnValue>
<ReturnType>System.Void</ReturnType>
</ReturnValue>
<Parameters>
<Parameter Name="writer" Type="System.IO.BinaryWriter" />
</Parameters>
<Docs>
<remarks>
<attribution license="cc4" from="Microsoft" modified="false" />
<para>The <see cref="M:System.Web.SessionState.SessionStateItemCollection.Serialize(System.IO.BinaryWriter)" /> method can be used to write the contents of a <see cref="T:System.Web.SessionState.SessionStateItemCollection" /> collection to the session store.</para>
<para>To retrieve a serialized <see cref="T:System.Web.SessionState.SessionStateItemCollection" /> object from the session store, use the <see cref="M:System.Web.SessionState.SessionStateItemCollection.Deserialize(System.IO.BinaryReader)" /> method.</para>
</remarks>
<summary>
<attribution license="cc4" from="Microsoft" modified="false" />
<para>Writes the contents of the collection to a <see cref="T:System.IO.BinaryWriter" />.</para>
</summary>
<param name="writer">
<attribution license="cc4" from="Microsoft" modified="false" />The <see cref="T:System.IO.BinaryWriter" /> used to write the serialized collection to a stream or encoded string.</param>
</Docs>
</Member>
</Members>
</Type>

View File

@@ -0,0 +1,32 @@
<?xml version="1.0" encoding="utf-8"?>
<Type Name="SessionStateItemExpireCallback" FullName="System.Web.SessionState.SessionStateItemExpireCallback">
<TypeSignature Language="C#" Value="public delegate void SessionStateItemExpireCallback(string id, SessionStateStoreData item);" />
<AssemblyInfo>
<AssemblyName>System.Web</AssemblyName>
<AssemblyVersion>2.0.0.0</AssemblyVersion>
</AssemblyInfo>
<Base>
<BaseTypeName>System.Delegate</BaseTypeName>
</Base>
<Parameters>
<Parameter Name="id" Type="System.String" />
<Parameter Name="item" Type="System.Web.SessionState.SessionStateStoreData" />
</Parameters>
<ReturnValue>
<ReturnType>System.Void</ReturnType>
</ReturnValue>
<Docs>
<param name="id">To be added.</param>
<param name="item">To be added.</param>
<since version=".NET 2.0" />
<remarks>
<attribution license="cc4" from="Microsoft" modified="false" />
<para>The <see cref="T:System.Web.SessionState.SessionStateItemExpireCallback" /> delegate is used to enable a <see cref="T:System.Web.SessionState.SessionStateStoreProviderBase" /> implementation to call the Session_OnEnd event from the Global.asax file.</para>
<para>For more information, see the remarks provided for the <see cref="M:System.Web.SessionState.SessionStateStoreProviderBase.SetItemExpireCallback(System.Web.SessionState.SessionStateItemExpireCallback)" /> method.</para>
</remarks>
<summary>
<attribution license="cc4" from="Microsoft" modified="false" />
<para>Represents the method that handles the <see cref="E:System.Web.SessionState.SessionStateModule.End" /> event of a session-state module.</para>
</summary>
</Docs>
</Type>

View File

@@ -0,0 +1,120 @@
<?xml version="1.0" encoding="utf-8"?>
<Type Name="SessionStateMode" FullName="System.Web.SessionState.SessionStateMode">
<TypeSignature Language="C#" Maintainer="auto" Value="public enum SessionStateMode" />
<AssemblyInfo>
<AssemblyName>System.Web</AssemblyName>
<AssemblyPublicKey>
</AssemblyPublicKey>
<AssemblyVersion>1.0.5000.0</AssemblyVersion>
<AssemblyVersion>2.0.0.0</AssemblyVersion>
</AssemblyInfo>
<ThreadSafetyStatement>Gtk# is thread aware, but not thread safe; See the &lt;link location="node:gtk-sharp/programming/threads"&gt;Gtk# Thread Programming&lt;/link&gt; for details.</ThreadSafetyStatement>
<Base>
<BaseTypeName>System.Enum</BaseTypeName>
</Base>
<Docs>
<remarks>To be added</remarks>
<summary>
<attribution license="cc4" from="Microsoft" modified="false" />
<para>Specifies the session-state mode.</para>
</summary>
</Docs>
<Members>
<Member MemberName="Custom">
<MemberSignature Language="C#" Value="Custom" />
<MemberType>Field</MemberType>
<AssemblyInfo>
<AssemblyVersion>2.0.0.0</AssemblyVersion>
</AssemblyInfo>
<ReturnValue>
<ReturnType>System.Web.SessionState.SessionStateMode</ReturnType>
</ReturnValue>
<Docs>
<summary>
<attribution license="cc4" from="Microsoft" modified="false" />
<para>Session state is using a custom data store to store session-state information.</para>
</summary>
</Docs>
</Member>
<Member MemberName="InProc">
<MemberSignature Language="C#" Value="InProc" />
<MemberType>Field</MemberType>
<ReturnValue>
<ReturnType>System.Web.SessionState.SessionStateMode</ReturnType>
</ReturnValue>
<Parameters>
</Parameters>
<Docs>
<remarks>To be added</remarks>
<summary>
<attribution license="cc4" from="Microsoft" modified="false" />
<para>Session state is in process with an ASP.NET worker process.</para>
</summary>
</Docs>
<AssemblyInfo>
<AssemblyVersion>1.0.5000.0</AssemblyVersion>
<AssemblyVersion>2.0.0.0</AssemblyVersion>
</AssemblyInfo>
</Member>
<Member MemberName="Off">
<MemberSignature Language="C#" Value="Off" />
<MemberType>Field</MemberType>
<ReturnValue>
<ReturnType>System.Web.SessionState.SessionStateMode</ReturnType>
</ReturnValue>
<Parameters>
</Parameters>
<Docs>
<remarks>To be added</remarks>
<summary>
<attribution license="cc4" from="Microsoft" modified="false" />
<para>Session state is disabled.</para>
</summary>
</Docs>
<AssemblyInfo>
<AssemblyVersion>1.0.5000.0</AssemblyVersion>
<AssemblyVersion>2.0.0.0</AssemblyVersion>
</AssemblyInfo>
</Member>
<Member MemberName="SQLServer">
<MemberSignature Language="C#" Value="SQLServer" />
<MemberType>Field</MemberType>
<ReturnValue>
<ReturnType>System.Web.SessionState.SessionStateMode</ReturnType>
</ReturnValue>
<Parameters>
</Parameters>
<Docs>
<remarks>To be added</remarks>
<summary>
<attribution license="cc4" from="Microsoft" modified="false" />
<para>Session state is using an out-of-process SQL Server database to store state information.</para>
</summary>
</Docs>
<AssemblyInfo>
<AssemblyVersion>1.0.5000.0</AssemblyVersion>
<AssemblyVersion>2.0.0.0</AssemblyVersion>
</AssemblyInfo>
</Member>
<Member MemberName="StateServer">
<MemberSignature Language="C#" Value="StateServer" />
<MemberType>Field</MemberType>
<ReturnValue>
<ReturnType>System.Web.SessionState.SessionStateMode</ReturnType>
</ReturnValue>
<Parameters>
</Parameters>
<Docs>
<remarks>To be added</remarks>
<summary>
<attribution license="cc4" from="Microsoft" modified="false" />
<para>Session state is using the out-of-process ASP.NET State Service to store state information.</para>
</summary>
</Docs>
<AssemblyInfo>
<AssemblyVersion>1.0.5000.0</AssemblyVersion>
<AssemblyVersion>2.0.0.0</AssemblyVersion>
</AssemblyInfo>
</Member>
</Members>
</Type>

View File

@@ -0,0 +1,158 @@
<?xml version="1.0" encoding="utf-8"?>
<Type Name="SessionStateModule" FullName="System.Web.SessionState.SessionStateModule">
<TypeSignature Language="C#" Maintainer="auto" Value="public sealed class SessionStateModule : System.Web.IHttpModule" />
<AssemblyInfo>
<AssemblyName>System.Web</AssemblyName>
<AssemblyPublicKey>
</AssemblyPublicKey>
<AssemblyVersion>1.0.5000.0</AssemblyVersion>
<AssemblyVersion>2.0.0.0</AssemblyVersion>
</AssemblyInfo>
<ThreadSafetyStatement>Gtk# is thread aware, but not thread safe; See the &lt;link location="node:gtk-sharp/programming/threads"&gt;Gtk# Thread Programming&lt;/link&gt; for details.</ThreadSafetyStatement>
<Base>
<BaseTypeName>System.Object</BaseTypeName>
</Base>
<Interfaces>
<Interface>
<InterfaceName>System.Web.IHttpModule</InterfaceName>
</Interface>
</Interfaces>
<Docs>
<remarks>
<attribution license="cc4" from="Microsoft" modified="false" />
<para> <see cref="T:System.Web.SessionState.SessionStateModule" /> is ASP.NET's default session-state handler. It writes session data to and retrieves it from the session-state store and raises the <system>Session_OnStart</system> and <system>Session_OnEnd</system> events. For details about how to use ASP.NET session state to store and retrieve values for a user session, see <format type="text/html"><a href="6d60d381-6521-4e1d-9089-da6464f2a9bc">ASP.NET Session State Overview</a></format>.</para>
<para>You can replace the <see cref="T:System.Web.SessionState.SessionStateModule" /> with a custom implementation of the <see cref="T:System.Web.IHttpModule" /> interface that manages session state. For an example of a custom session-state module, see the <see cref="T:System.Web.SessionState.SessionStateUtility" /> class overview.</para>
</remarks>
<summary>
<attribution license="cc4" from="Microsoft" modified="false" />
<para>Provides session-state services for an application. This class cannot be inherited.</para>
</summary>
</Docs>
<Members>
<Member MemberName=".ctor">
<MemberSignature Language="C#" Value="public SessionStateModule ();" />
<MemberType>Constructor</MemberType>
<ReturnValue />
<Parameters />
<Docs>
<remarks>
<attribution license="cc4" from="Microsoft" modified="false" />
<para>This constructor is not intended to be called from application code.</para>
<para>An <see cref="T:System.Web.HttpApplication" /> object is created when an ASP.NET application is started. The <see cref="T:System.Web.HttpApplication" /> object calls the <see cref="T:System.Web.SessionState.SessionStateModule" /> constructor to create the <see cref="T:System.Web.SessionState.SessionStateModule" /> object for the application. The <see cref="T:System.Web.SessionState.SessionStateModule" /> is specified in the configuration for an application.</para>
</remarks>
<summary>
<attribution license="cc4" from="Microsoft" modified="false" />
<para>Initializes a new instance of the <see cref="T:System.Web.SessionState.SessionStateModule" /> class.</para>
</summary>
</Docs>
<AssemblyInfo>
<AssemblyVersion>1.0.5000.0</AssemblyVersion>
<AssemblyVersion>2.0.0.0</AssemblyVersion>
</AssemblyInfo>
</Member>
<Member MemberName="Dispose">
<MemberSignature Language="C#" Value="public void Dispose ();" />
<MemberType>Method</MemberType>
<ReturnValue>
<ReturnType>System.Void</ReturnType>
</ReturnValue>
<Parameters />
<Docs>
<remarks>
<attribution license="cc4" from="Microsoft" modified="false" />
<para>This method is not intended to be called from application code.</para>
<para>An <see cref="T:System.Web.HttpApplication" /> object is created when an ASP.NET application is started. The <see cref="T:System.Web.HttpApplication" /> object creates and initializes the <see cref="T:System.Web.SessionState.SessionStateModule" /> object for the application and calls the <see cref="M:System.Web.SessionState.SessionStateModule.Dispose" /> method when the object is released. The <see cref="T:System.Web.SessionState.SessionStateModule" /> is specified in the configuration for an application.</para>
</remarks>
<summary>
<attribution license="cc4" from="Microsoft" modified="false" />
<para>Executes final cleanup code before the <see cref="T:System.Web.SessionState.SessionStateModule" /> object is released from memory.</para>
</summary>
</Docs>
<AssemblyInfo>
<AssemblyVersion>1.0.5000.0</AssemblyVersion>
<AssemblyVersion>2.0.0.0</AssemblyVersion>
</AssemblyInfo>
</Member>
<Member MemberName="End">
<MemberSignature Language="C#" Value="public event EventHandler End;" />
<MemberType>Event</MemberType>
<ReturnValue>
<ReturnType>System.EventHandler</ReturnType>
</ReturnValue>
<Parameters />
<Docs>
<remarks>
<attribution license="cc4" from="Microsoft" modified="false" />
<para>The <see cref="E:System.Web.SessionState.SessionStateModule.End" /> event is raised at the end of a request when the <see cref="M:System.Web.SessionState.HttpSessionState.Abandon" /> method has been called or when the session has expired. A session expires when the number of minutes specified by the <see cref="P:System.Web.SessionState.HttpSessionState.Timeout" /> property passes without a request being made for the session.</para>
<para>The <system>Session_OnEnd</system> event is used to perform any cleanup work for a session such as disposing of resources used by the session.</para>
<para>You can specify a handler for the <see cref="E:System.Web.SessionState.SessionStateModule.End" /> event by adding a public subroutine named <system>Session_OnEnd</system> to the Global.asax file.</para>
<block subset="none" type="note">
<para>The <system>Session_OnEnd</system> event is only supported when the session-state <see cref="P:System.Web.SessionState.HttpSessionState.Mode" /> property value is <see cref="F:System.Web.SessionState.SessionStateMode.InProc" />, which is the default. If the session-state <see cref="P:System.Web.SessionState.HttpSessionState.Mode" /> is set to <see cref="F:System.Web.SessionState.SessionStateMode.StateServer" /> or <see cref="F:System.Web.SessionState.SessionStateMode.SQLServer" />, then the <system>Session_OnEnd</system> event in the Global.asax file is ignored. If the session state <see cref="P:System.Web.SessionState.HttpSessionState.Mode" /> property value is <see cref="F:System.Web.SessionState.SessionStateMode.Custom" />, then support for the <system>Session_OnEnd</system> event is determined by the custom session-state store provider.</para>
</block>
<para>Though the <see cref="E:System.Web.SessionState.SessionStateModule.End" /> event is public, you can only handle it by adding an event handler in the Global.asax file. This restriction is implemented because <see cref="T:System.Web.HttpApplication" /> instances are reused for performance. When a session expires, only the <system>Session_OnEnd</system> event specified in the Global.asax file is executed, to prevent code from calling an <see cref="E:System.Web.SessionState.SessionStateModule.End" /> event handler associated with an <see cref="T:System.Web.HttpApplication" /> instance that is currently in use.</para>
<para>For more information about the Global.asax file, see <format type="text/html"><a href="9ade9d4d-4d52-4e88-af52-53a9ffa26582">Global.asax Syntax</a></format>.</para>
</remarks>
<summary>
<attribution license="cc4" from="Microsoft" modified="false" />
<para>Occurs when a session ends.</para>
</summary>
</Docs>
<AssemblyInfo>
<AssemblyVersion>1.0.5000.0</AssemblyVersion>
<AssemblyVersion>2.0.0.0</AssemblyVersion>
</AssemblyInfo>
</Member>
<Member MemberName="Init">
<MemberSignature Language="C#" Value="public void Init (System.Web.HttpApplication app);" />
<MemberType>Method</MemberType>
<ReturnValue>
<ReturnType>System.Void</ReturnType>
</ReturnValue>
<Parameters>
<Parameter Name="app" Type="System.Web.HttpApplication" />
</Parameters>
<Docs>
<remarks>
<attribution license="cc4" from="Microsoft" modified="false" />
<para>This method is not intended to be called from application code.</para>
<para>An <see cref="T:System.Web.HttpApplication" /> is created when an ASP.NET application is started. The <see cref="T:System.Web.HttpApplication" /> object calls the <see cref="M:System.Web.SessionState.SessionStateModule.Init(System.Web.HttpApplication)" /> method when it creates the <see cref="T:System.Web.SessionState.SessionStateModule" /> object for the application. The <see cref="T:System.Web.SessionState.SessionStateModule" /> class is specified in the configuration for an application.</para>
</remarks>
<summary>
<attribution license="cc4" from="Microsoft" modified="false" />
<para>Calls initialization code when a <see cref="T:System.Web.SessionState.SessionStateModule" /> object is created.</para>
</summary>
<param name="app">
<attribution license="cc4" from="Microsoft" modified="false" />The current application. </param>
</Docs>
<AssemblyInfo>
<AssemblyVersion>1.0.5000.0</AssemblyVersion>
<AssemblyVersion>2.0.0.0</AssemblyVersion>
</AssemblyInfo>
</Member>
<Member MemberName="Start">
<MemberSignature Language="C#" Value="public event EventHandler Start;" />
<MemberType>Event</MemberType>
<ReturnValue>
<ReturnType>System.EventHandler</ReturnType>
</ReturnValue>
<Parameters />
<Docs>
<remarks>
<attribution license="cc4" from="Microsoft" modified="false" />
<para>The <see cref="E:System.Web.SessionState.SessionStateModule.Start" /> event is raised at the beginning of a request when a new session is started. A new session is started if a request is made that does not contain a session identifier, the session identifier is invalid, or the session associated with a session identifier has expired. </para>
<para>The <system>Session_OnStart</system> event is used to perform any initialization work for a session such as setting up default values for session variables.</para>
<para>You can specify a handler for the <see cref="E:System.Web.SessionState.SessionStateModule.Start" /> event by adding a public subroutine named <system>Session_OnStart</system> to the Global.asax file.</para>
<para>For more information about the Global.asax file, see <format type="text/html"><a href="9ade9d4d-4d52-4e88-af52-53a9ffa26582">Global.asax Syntax</a></format>.</para>
</remarks>
<summary>
<attribution license="cc4" from="Microsoft" modified="false" />
<para>The event that occurs when a session is created.</para>
</summary>
</Docs>
<AssemblyInfo>
<AssemblyVersion>1.0.5000.0</AssemblyVersion>
<AssemblyVersion>2.0.0.0</AssemblyVersion>
</AssemblyInfo>
</Member>
</Members>
</Type>

View File

@@ -0,0 +1,124 @@
<?xml version="1.0" encoding="utf-8"?>
<Type Name="SessionStateStoreData" FullName="System.Web.SessionState.SessionStateStoreData">
<TypeSignature Language="C#" Value="public class SessionStateStoreData" />
<AssemblyInfo>
<AssemblyName>System.Web</AssemblyName>
<AssemblyVersion>2.0.0.0</AssemblyVersion>
</AssemblyInfo>
<Base>
<BaseTypeName>System.Object</BaseTypeName>
</Base>
<Interfaces />
<Docs>
<since version=".NET 2.0" />
<remarks>
<attribution license="cc4" from="Microsoft" modified="false" />
<para>The <see cref="T:System.Web.SessionState.SessionStateStoreData" /> class is used by ASP.NET and implementers of a custom session-state store to pass session-state information to and from the <see cref="T:System.Web.SessionState.SessionStateModule" />.</para>
<para>The <see cref="T:System.Web.SessionState.SessionStateStoreData" /> class is used to represent session-state data for a session store to the <see cref="T:System.Web.SessionState.SessionStateModule" />. The <see cref="T:System.Web.SessionState.SessionStateStoreData" /> object contains the session-state variable names and values, static object references, and <see cref="P:System.Web.SessionState.SessionStateStoreData.Timeout" /> information for the current session.</para>
</remarks>
<summary>
<attribution license="cc4" from="Microsoft" modified="false" />
<para>Represents session-state data for a session store.</para>
</summary>
</Docs>
<Members>
<Member MemberName=".ctor">
<MemberSignature Language="C#" Value="public SessionStateStoreData (System.Web.SessionState.ISessionStateItemCollection items, System.Web.HttpStaticObjectsCollection objects, int timeout);" />
<MemberType>Constructor</MemberType>
<AssemblyInfo>
<AssemblyVersion>2.0.0.0</AssemblyVersion>
</AssemblyInfo>
<Parameters>
<Parameter Name="items" Type="System.Web.SessionState.ISessionStateItemCollection" />
<Parameter Name="objects" Type="System.Web.HttpStaticObjectsCollection" />
<Parameter Name="timeout" Type="System.Int32" />
</Parameters>
<Docs>
<param name="items">To be added.</param>
<param name="objects">To be added.</param>
<remarks>
<attribution license="cc4" from="Microsoft" modified="false" />
<para>The <see cref="T:System.Web.SessionState.SessionStateStoreData" /> class is used to represent session-state data for a session store to the <see cref="T:System.Web.SessionState.SessionStateModule" />. The <see cref="T:System.Web.SessionState.SessionStateStoreData" /> object contains the session-state variable names and values, static object references, and <see cref="P:System.Web.SessionState.SessionStateStoreData.Timeout" /> information for the current session.</para>
<para>The <see cref="T:System.Web.SessionState.SessionStateStoreData" /> class is used by ASP.NET and implementers of a custom session-state store to pass session-state information to and from the <see cref="T:System.Web.SessionState.SessionStateModule" />.</para>
<para>Custom session-store implementers construct a <see cref="T:System.Web.SessionState.SessionStateStoreData" /> object in implementations of the <see cref="M:System.Web.SessionState.SessionStateStoreProviderBase.GetItem(System.Web.HttpContext,System.String,System.Boolean@,System.TimeSpan@,System.Object@,System.Web.SessionState.SessionStateActions@)" />, <see cref="M:System.Web.SessionState.SessionStateStoreProviderBase.GetItemExclusive(System.Web.HttpContext,System.String,System.Boolean@,System.TimeSpan@,System.Object@,System.Web.SessionState.SessionStateActions@)" />, and <see cref="M:System.Web.SessionState.SessionStateStoreProviderBase.CreateNewStoreData(System.Web.HttpContext,System.Int32)" /> methods.</para>
</remarks>
<summary>
<attribution license="cc4" from="Microsoft" modified="false" />
<para>Creates a new instance of the <see cref="T:System.Web.SessionState.SessionStateStoreData" /> class.</para>
</summary>
<param name="timeout">
<attribution license="cc4" from="Microsoft" modified="false" />The <see cref="P:System.Web.SessionState.SessionStateStoreData.Timeout" /> for the current session.</param>
</Docs>
</Member>
<Member MemberName="Items">
<MemberSignature Language="C#" Value="public virtual System.Web.SessionState.ISessionStateItemCollection Items { get; }" />
<MemberType>Property</MemberType>
<ReturnValue>
<ReturnType>System.Web.SessionState.ISessionStateItemCollection</ReturnType>
</ReturnValue>
<Docs>
<value>To be added.</value>
<since version=".NET 2.0" />
<remarks>
<attribution license="cc4" from="Microsoft" modified="false" />
<para>The <see cref="P:System.Web.SessionState.SessionStateStoreData.Items" /> property references the session-state variables that are exposed to ASP.NET application code using the <see cref="T:System.Web.SessionState.HttpSessionState" /> class, which is accessed using the <see cref="P:System.Web.HttpContext.Session" /> property of the current <see cref="T:System.Web.HttpContext" /> or the <see cref="T:System.Web.UI.Page" /> instance.</para>
<para>By default, session-state variables are managed using the <see cref="T:System.Web.SessionState.SessionStateItemCollection" /> object. Custom session-store implementers can supply their own implementation of the <see cref="T:System.Web.SessionState.ISessionStateItemCollection" /> interface.</para>
</remarks>
<summary>
<attribution license="cc4" from="Microsoft" modified="false" />
<para>The session variables and values for the current session.</para>
</summary>
</Docs>
<AssemblyInfo>
<AssemblyVersion>2.0.0.0</AssemblyVersion>
</AssemblyInfo>
</Member>
<Member MemberName="StaticObjects">
<MemberSignature Language="C#" Value="public virtual System.Web.HttpStaticObjectsCollection StaticObjects { get; }" />
<MemberType>Property</MemberType>
<ReturnValue>
<ReturnType>System.Web.HttpStaticObjectsCollection</ReturnType>
</ReturnValue>
<Docs>
<value>To be added.</value>
<since version=".NET 2.0" />
<remarks>
<attribution license="cc4" from="Microsoft" modified="false" />
<para>The</para>
<para>
<see cref="P:System.Web.SessionState.SessionStateStoreData.StaticObjects" /> property is provided for compatibility with earlier versions of ASP.</para>
<para>Custom session-store implementers can obtain a reference to the <see cref="T:System.Web.HttpStaticObjectsCollection" /> class for the current <see cref="T:System.Web.HttpContext" /> instance using the <see cref="M:System.Web.SessionState.SessionStateUtility.GetSessionStaticObjects(System.Web.HttpContext)" /> method.</para>
<block subset="none" type="note">
<para>Custom objects stored in the <see cref="P:System.Web.SessionState.SessionStateStoreData.StaticObjects" /> collection must support binary serialization. For more information, see <format type="text/html"><a href="2b1ea3be-1152-4032-b2b3-07794054c405">Binary Serialization</a></format>.</para>
</block>
</remarks>
<summary>
<attribution license="cc4" from="Microsoft" modified="false" />
<para>Gets a collection of objects declared by &lt;object Runat="Server" Scope="Session"/&gt; tags within the ASP.NET application file Global.asax.</para>
</summary>
</Docs>
<AssemblyInfo>
<AssemblyVersion>2.0.0.0</AssemblyVersion>
</AssemblyInfo>
</Member>
<Member MemberName="Timeout">
<MemberSignature Language="C#" Value="public virtual int Timeout { set; get; }" />
<MemberType>Property</MemberType>
<ReturnValue>
<ReturnType>System.Int32</ReturnType>
</ReturnValue>
<Docs>
<value>To be added.</value>
<remarks>To be added.</remarks>
<since version=".NET 2.0" />
<summary>
<attribution license="cc4" from="Microsoft" modified="false" />
<para>Gets and sets the amount of time, in minutes, allowed between requests before the session-state provider terminates the session.</para>
</summary>
</Docs>
<AssemblyInfo>
<AssemblyVersion>2.0.0.0</AssemblyVersion>
</AssemblyInfo>
</Member>
</Members>
</Type>

View File

@@ -0,0 +1,433 @@
<?xml version="1.0" encoding="utf-8"?>
<Type Name="SessionStateStoreProviderBase" FullName="System.Web.SessionState.SessionStateStoreProviderBase">
<TypeSignature Language="C#" Value="public abstract class SessionStateStoreProviderBase : System.Configuration.Provider.ProviderBase" />
<AssemblyInfo>
<AssemblyName>System.Web</AssemblyName>
<AssemblyVersion>2.0.0.0</AssemblyVersion>
</AssemblyInfo>
<Base>
<BaseTypeName>System.Configuration.Provider.ProviderBase</BaseTypeName>
</Base>
<Interfaces />
<Docs>
<remarks>
<attribution license="cc4" from="Microsoft" modified="false" />
<para>ASP.NET session state reads and writes session data from and to a data store using a session-state store provider. A session-state store provider is a class that inherits the <see cref="T:System.Web.SessionState.SessionStateStoreProviderBase" /> abstract class and overrides its members with implementations specific to the data store. The session-state store provider is called by the <see cref="T:System.Web.SessionState.SessionStateModule" /> class during the processing of an ASP.NET page to communicate with the data store for the storage and retrieval of session variables and related session information such as the time-out value.</para>
<para>Session data within each ASP.NET application is stored separately for each <see cref="P:System.Web.SessionState.HttpSessionState.SessionID" /> property. ASP.NET applications do not share session data.</para>
<para>You can specify a custom <see cref="T:System.Web.SessionState.SessionStateStoreProviderBase" /> implementation for an ASP.NET application by setting the mode attribute of the sessionState configuration element to <see cref="F:System.Web.SessionState.SessionStateMode.Custom" /> and the customProvider attribute to the name of the custom provider, as shown in the example for this topic.</para>
<format type="text/html">
<h2>Locking Session Store Data</h2>
</format>
<para>Because ASP.NET applications are multithreaded to support responding to concurrent requests, it is possible that concurrent requests might attempt to access the same session information. Consider a scenario where multiple frames in a frameset all access the same application. The separate requests for each frame in the frameset can be executed on the Web server concurrently on different threads. If the ASP.NET pages for each frame source access session-state variables, then you could have multiple threads accessing the session store concurrently.</para>
<para>To avoid data collisions at the session store and unexpected session-state behavior, the <see cref="T:System.Web.SessionState.SessionStateModule" /> and <see cref="T:System.Web.SessionState.SessionStateStoreProviderBase" /> classes include lock functionality that exclusively locks the session store item for a particular session for the duration of the execution of an ASP.NET page. Note that even if the <see cref="P:System.Web.Configuration.PagesSection.EnableSessionState" /> attribute is marked as ReadOnly, other ASP.NET pages in the same application might be able to write to the session store, so a request for read-only session data from the store might still end up waiting for locked data to be freed.</para>
<para>A lock is set on session-store data at the beginning of the request, in the call to the <see cref="M:System.Web.SessionState.SessionStateStoreProviderBase.GetItemExclusive(System.Web.HttpContext,System.String,System.Boolean@,System.TimeSpan@,System.Object@,System.Web.SessionState.SessionStateActions@)" /> method. When the request completes, the lock is released during the call to the <see cref="M:System.Web.SessionState.SessionStateStoreProviderBase.SetAndReleaseItemExclusive(System.Web.HttpContext,System.String,System.Web.SessionState.SessionStateStoreData,System.Object,System.Boolean)" /> method.</para>
<para>If the <see cref="T:System.Web.SessionState.SessionStateModule" /> object encounters locked session data during the call to either the <see cref="M:System.Web.SessionState.SessionStateStoreProviderBase.GetItemExclusive(System.Web.HttpContext,System.String,System.Boolean@,System.TimeSpan@,System.Object@,System.Web.SessionState.SessionStateActions@)" /> or the <see cref="M:System.Web.SessionState.SessionStateStoreProviderBase.GetItem(System.Web.HttpContext,System.String,System.Boolean@,System.TimeSpan@,System.Object@,System.Web.SessionState.SessionStateActions@)" /> method, it will re-request the session data at half-second intervals until either the lock is released or the amount of time that the session data has been locked exceeds the value of the <see cref="P:System.Web.Configuration.HttpRuntimeSection.ExecutionTimeout" /> property. If the execution time out is exceeded, the <see cref="T:System.Web.SessionState.SessionStateModule" /> object will call the <see cref="M:System.Web.SessionState.SessionStateStoreProviderBase.ReleaseItemExclusive(System.Web.HttpContext,System.String,System.Object)" /> method to free the session-store data and request the session-store data at that time.</para>
<para>Because locked session-store data might have been freed by a call to the <see cref="M:System.Web.SessionState.SessionStateStoreProviderBase.ReleaseItemExclusive(System.Web.HttpContext,System.String,System.Object)" /> method on a separate thread before the call to the <see cref="M:System.Web.SessionState.SessionStateStoreProviderBase.SetAndReleaseItemExclusive(System.Web.HttpContext,System.String,System.Web.SessionState.SessionStateStoreData,System.Object,System.Boolean)" /> method for the current response, an attempt could be made to set and release session-state store data that has already been released and modified by another session. To avoid this situation, the <see cref="M:System.Web.SessionState.SessionStateStoreProviderBase.GetItem(System.Web.HttpContext,System.String,System.Boolean@,System.TimeSpan@,System.Object@,System.Web.SessionState.SessionStateActions@)" /> and <see cref="M:System.Web.SessionState.SessionStateStoreProviderBase.GetItemExclusive(System.Web.HttpContext,System.String,System.Boolean@,System.TimeSpan@,System.Object@,System.Web.SessionState.SessionStateActions@)" /> methods return a lock identifier. This lock identifier must be included with each request to modify locked session-store data. Session-store data is modified only if the lock identifier in the data store matches the lock identifier supplied by the <see cref="T:System.Web.SessionState.SessionStateModule" />.</para>
<format type="text/html">
<h2>Deleting Expired Session Store Data</h2>
</format>
<para>When the <see cref="M:System.Web.SessionState.HttpSessionState.Abandon" /> method is called for a particular session, the data for that session is deleted from the data store using the <see cref="M:System.Web.SessionState.SessionStateStoreProviderBase.RemoveItem(System.Web.HttpContext,System.String,System.Object,System.Web.SessionState.SessionStateStoreData)" /> method; otherwise, the data will remain in the session data store to server future requests for the session. It is up to the <see cref="T:System.Web.SessionState.SessionStateStoreProviderBase" /> implementation to delete expired session data.</para>
</remarks>
<summary>
<attribution license="cc4" from="Microsoft" modified="false" />
<para>Defines the required members of a session-state provider for a data store.</para>
</summary>
</Docs>
<Members>
<Member MemberName=".ctor">
<MemberSignature Language="C#" Value="protected SessionStateStoreProviderBase ();" />
<MemberType>Constructor</MemberType>
<AssemblyInfo>
<AssemblyVersion>2.0.0.0</AssemblyVersion>
</AssemblyInfo>
<Parameters />
<Docs>
<remarks>
<attribution license="cc4" from="Microsoft" modified="false" />
<para>You are not required to implement a constructor for a class that inherits the <see cref="T:System.Web.SessionState.SessionStateStoreProviderBase" /> abstract class. Initialization values for a <see cref="T:System.Web.SessionState.SessionStateStoreProviderBase" /> implementation are passed to the <see cref="M:System.Configuration.Provider.ProviderBase.Initialize(System.String,System.Collections.Specialized.NameValueCollection)" /> method implementation.</para>
</remarks>
<summary>
<attribution license="cc4" from="Microsoft" modified="false" />
<para>Initializes a new instance of the <see cref="T:System.Web.SessionState.SessionStateStoreProviderBase" /> class.</para>
</summary>
</Docs>
</Member>
<Member MemberName="CreateNewStoreData">
<MemberSignature Language="C#" Value="public abstract System.Web.SessionState.SessionStateStoreData CreateNewStoreData (System.Web.HttpContext context, int timeout);" />
<MemberType>Method</MemberType>
<AssemblyInfo>
<AssemblyVersion>2.0.0.0</AssemblyVersion>
</AssemblyInfo>
<ReturnValue>
<ReturnType>System.Web.SessionState.SessionStateStoreData</ReturnType>
</ReturnValue>
<Parameters>
<Parameter Name="context" Type="System.Web.HttpContext" />
<Parameter Name="timeout" Type="System.Int32" />
</Parameters>
<Docs>
<remarks>
<attribution license="cc4" from="Microsoft" modified="false" />
<para>The <see cref="T:System.Web.SessionState.SessionStateModule" /> object calls the <see cref="M:System.Web.SessionState.SessionStateStoreProviderBase.CreateNewStoreData(System.Web.HttpContext,System.Int32)" /> method at the beginning of a request for an ASP.NET page, during the <see cref="E:System.Web.HttpApplication.AcquireRequestState" /> event. The <see cref="M:System.Web.SessionState.SessionStateStoreProviderBase.CreateNewStoreData(System.Web.HttpContext,System.Int32)" /> method is called if:</para>
<list type="bullet">
<item>
<para>the incoming request has no session ID, or</para>
</item>
<item>
<para>the incoming request has a session ID, but the session is not found in the data store.</para>
</item>
</list>
<para>The <see cref="M:System.Web.SessionState.SessionStateStoreProviderBase.CreateNewStoreData(System.Web.HttpContext,System.Int32)" /> method creates a new <see cref="T:System.Web.SessionState.SessionStateStoreData" /> object with an empty <see cref="T:System.Web.SessionState.ISessionStateItemCollection" /> object, an <see cref="T:System.Web.HttpStaticObjectsCollection" /> collection, and the specified <paramref name="timeout" /> value. The <see cref="T:System.Web.HttpStaticObjectsCollection" /> collection for the ASP.NET application can be retrieved using the <see cref="M:System.Web.SessionState.SessionStateUtility.GetSessionStaticObjects(System.Web.HttpContext)" /> method.</para>
</remarks>
<summary>
<attribution license="cc4" from="Microsoft" modified="false" />
<para>Creates a new <see cref="T:System.Web.SessionState.SessionStateStoreData" /> object to be used for the current request.</para>
</summary>
<returns>
<attribution license="cc4" from="Microsoft" modified="false" />
<para>A new <see cref="T:System.Web.SessionState.SessionStateStoreData" /> for the current request.</para>
</returns>
<param name="context">
<attribution license="cc4" from="Microsoft" modified="false" />The <see cref="T:System.Web.HttpContext" /> for the current request.</param>
<param name="timeout">
<attribution license="cc4" from="Microsoft" modified="false" />The session-state <see cref="P:System.Web.SessionState.HttpSessionState.Timeout" /> value for the new <see cref="T:System.Web.SessionState.SessionStateStoreData" />.</param>
</Docs>
</Member>
<Member MemberName="CreateUninitializedItem">
<MemberSignature Language="C#" Value="public abstract void CreateUninitializedItem (System.Web.HttpContext context, string id, int timeout);" />
<MemberType>Method</MemberType>
<AssemblyInfo>
<AssemblyVersion>2.0.0.0</AssemblyVersion>
</AssemblyInfo>
<ReturnValue>
<ReturnType>System.Void</ReturnType>
</ReturnValue>
<Parameters>
<Parameter Name="context" Type="System.Web.HttpContext" />
<Parameter Name="id" Type="System.String" />
<Parameter Name="timeout" Type="System.Int32" />
</Parameters>
<Docs>
<remarks>
<attribution license="cc4" from="Microsoft" modified="false" />
<para>The <see cref="M:System.Web.SessionState.SessionStateStoreProviderBase.CreateUninitializedItem(System.Web.HttpContext,System.String,System.Int32)" /> method is used with sessions when the cookieless and regenerateExpiredSessionId attributes are both true. Having the regenerateExpiredSessionId attribute set to true causes the <see cref="T:System.Web.SessionState.SessionStateModule" /> object to generate a new <see cref="P:System.Web.SessionState.HttpSessionState.SessionID" /> value when an expired <see cref="P:System.Web.SessionState.HttpSessionState.SessionID" /> value is encountered.</para>
<para>The process of generating a new <see cref="P:System.Web.SessionState.HttpSessionState.SessionID" /> value requires redirecting the browser to a URL that contains the newly generated <see cref="P:System.Web.SessionState.HttpSessionState.SessionID" /> value. The <see cref="M:System.Web.SessionState.SessionStateStoreProviderBase.CreateUninitializedItem(System.Web.HttpContext,System.String,System.Int32)" /> method is called during the initial request that contains an expired <see cref="P:System.Web.SessionState.HttpSessionState.SessionID" /> value. After the <see cref="T:System.Web.SessionState.SessionStateModule" /> object acquires a new <see cref="P:System.Web.SessionState.HttpSessionState.SessionID" /> value to replace the expired value, it calls the <see cref="M:System.Web.SessionState.SessionStateStoreProviderBase.CreateUninitializedItem(System.Web.HttpContext,System.String,System.Int32)" /> method to add an uninitialized entry to the session-state data store. The browser is then redirected to the URL containing the newly generated <see cref="P:System.Web.SessionState.HttpSessionState.SessionID" /> value. The existence of the uninitialized entry in the session data store ensures that the redirected request that includes the newly generated <see cref="P:System.Web.SessionState.HttpSessionState.SessionID" /> value is not mistaken for a request for an expired session and is, instead, treated as a new session. </para>
<para>The uninitialized entry in the session data store is associated with the newly generated <see cref="P:System.Web.SessionState.HttpSessionState.SessionID" /> value and contains only default values, including an expiration date and time and a value that corresponds to the <paramref name="actionFlags" /> parameter of the <see cref="M:System.Web.SessionState.SessionStateStoreProviderBase.GetItem(System.Web.HttpContext,System.String,System.Boolean@,System.TimeSpan@,System.Object@,System.Web.SessionState.SessionStateActions@)" /> and <see cref="M:System.Web.SessionState.SessionStateStoreProviderBase.GetItemExclusive(System.Web.HttpContext,System.String,System.Boolean@,System.TimeSpan@,System.Object@,System.Web.SessionState.SessionStateActions@)" /> methods. The uninitialized entry in the session-state store should include an <paramref name="actionFlags" /> value equal to the <see cref="F:System.Web.SessionState.SessionStateActions.InitializeItem" /> enumeration value. This value is passed to the <see cref="T:System.Web.SessionState.SessionStateModule" /> object by the <see cref="M:System.Web.SessionState.SessionStateStoreProviderBase.GetItem(System.Web.HttpContext,System.String,System.Boolean@,System.TimeSpan@,System.Object@,System.Web.SessionState.SessionStateActions@)" /> and <see cref="M:System.Web.SessionState.SessionStateStoreProviderBase.GetItemExclusive(System.Web.HttpContext,System.String,System.Boolean@,System.TimeSpan@,System.Object@,System.Web.SessionState.SessionStateActions@)" /> methods, and informs the <see cref="T:System.Web.SessionState.SessionStateModule" /> object that the current session is a new but uninitialized session. The <see cref="T:System.Web.SessionState.SessionStateModule" /> object will then initialize the new session and raise the Session_OnStart event.</para>
<para>For more information about cookieless sessions, see the <see cref="P:System.Web.SessionState.HttpSessionState.IsCookieless" /> property.</para>
</remarks>
<summary>
<attribution license="cc4" from="Microsoft" modified="false" />
<para>Adds a new session-state item to the data store.</para>
</summary>
<param name="context">
<attribution license="cc4" from="Microsoft" modified="false" />The <see cref="T:System.Web.HttpContext" /> for the current request.</param>
<param name="id">
<attribution license="cc4" from="Microsoft" modified="false" />The <see cref="P:System.Web.SessionState.HttpSessionState.SessionID" /> for the current request.</param>
<param name="timeout">
<attribution license="cc4" from="Microsoft" modified="false" />The session <see cref="P:System.Web.SessionState.HttpSessionState.Timeout" /> for the current request.</param>
</Docs>
</Member>
<Member MemberName="Dispose">
<MemberSignature Language="C#" Value="public abstract void Dispose ();" />
<MemberType>Method</MemberType>
<AssemblyInfo>
<AssemblyVersion>2.0.0.0</AssemblyVersion>
</AssemblyInfo>
<ReturnValue>
<ReturnType>System.Void</ReturnType>
</ReturnValue>
<Parameters />
<Docs>
<remarks>
<attribution license="cc4" from="Microsoft" modified="false" />
<para>The <see cref="M:System.Web.SessionState.SessionStateStoreProviderBase.Dispose" /> method is called when the <see cref="M:System.Web.SessionState.SessionStateModule.Dispose" /> method executes at the closing of the application domain. Classes that inherit the <see cref="T:System.Web.SessionState.SessionStateStoreProviderBase" /> class can use this method to free any resources no longer in use.</para>
</remarks>
<summary>
<attribution license="cc4" from="Microsoft" modified="false" />
<para>Releases all resources used by the <see cref="T:System.Web.SessionState.SessionStateStoreProviderBase" /> implementation.</para>
</summary>
</Docs>
</Member>
<Member MemberName="EndRequest">
<MemberSignature Language="C#" Value="public abstract void EndRequest (System.Web.HttpContext context);" />
<MemberType>Method</MemberType>
<AssemblyInfo>
<AssemblyVersion>2.0.0.0</AssemblyVersion>
</AssemblyInfo>
<ReturnValue>
<ReturnType>System.Void</ReturnType>
</ReturnValue>
<Parameters>
<Parameter Name="context" Type="System.Web.HttpContext" />
</Parameters>
<Docs>
<remarks>
<attribution license="cc4" from="Microsoft" modified="false" />
<para>The <see cref="T:System.Web.SessionState.SessionStateModule" /> object calls the <see cref="M:System.Web.SessionState.SessionStateStoreProviderBase.EndRequest(System.Web.HttpContext)" /> method at the end of a request for an ASP.NET page, during the <see cref="E:System.Web.HttpApplication.EndRequest" /> event. You can use the <see cref="M:System.Web.SessionState.SessionStateStoreProviderBase.EndRequest(System.Web.HttpContext)" /> method to perform any per-request cleanup required by your session-state store provider.</para>
</remarks>
<summary>
<attribution license="cc4" from="Microsoft" modified="false" />
<para>Called by the <see cref="T:System.Web.SessionState.SessionStateModule" /> object at the end of a request.</para>
</summary>
<param name="context">
<attribution license="cc4" from="Microsoft" modified="false" />The <see cref="T:System.Web.HttpContext" /> for the current request.</param>
</Docs>
</Member>
<Member MemberName="GetItem">
<MemberSignature Language="C#" Value="public abstract System.Web.SessionState.SessionStateStoreData GetItem (System.Web.HttpContext context, string id, out bool locked, out TimeSpan lockAge, out object lockId, out System.Web.SessionState.SessionStateActions actions);" />
<MemberType>Method</MemberType>
<AssemblyInfo>
<AssemblyVersion>2.0.0.0</AssemblyVersion>
</AssemblyInfo>
<ReturnValue>
<ReturnType>System.Web.SessionState.SessionStateStoreData</ReturnType>
</ReturnValue>
<Parameters>
<Parameter Name="context" Type="System.Web.HttpContext" />
<Parameter Name="id" Type="System.String" />
<Parameter Name="locked" Type="System.Boolean&amp;" RefType="out" />
<Parameter Name="lockAge" Type="System.TimeSpan&amp;" RefType="out" />
<Parameter Name="lockId" Type="System.Object&amp;" RefType="out" />
<Parameter Name="actions" Type="System.Web.SessionState.SessionStateActions&amp;" RefType="out" />
</Parameters>
<Docs>
<param name="context">To be added.</param>
<param name="id">To be added.</param>
<param name="locked">To be added.</param>
<param name="lockAge">To be added.</param>
<param name="lockId">To be added.</param>
<param name="actions">To be added.</param>
<summary>To be added.</summary>
<returns>To be added.</returns>
<remarks>To be added.</remarks>
</Docs>
</Member>
<Member MemberName="GetItemExclusive">
<MemberSignature Language="C#" Value="public abstract System.Web.SessionState.SessionStateStoreData GetItemExclusive (System.Web.HttpContext context, string id, out bool locked, out TimeSpan lockAge, out object lockId, out System.Web.SessionState.SessionStateActions actions);" />
<MemberType>Method</MemberType>
<AssemblyInfo>
<AssemblyVersion>2.0.0.0</AssemblyVersion>
</AssemblyInfo>
<ReturnValue>
<ReturnType>System.Web.SessionState.SessionStateStoreData</ReturnType>
</ReturnValue>
<Parameters>
<Parameter Name="context" Type="System.Web.HttpContext" />
<Parameter Name="id" Type="System.String" />
<Parameter Name="locked" Type="System.Boolean&amp;" RefType="out" />
<Parameter Name="lockAge" Type="System.TimeSpan&amp;" RefType="out" />
<Parameter Name="lockId" Type="System.Object&amp;" RefType="out" />
<Parameter Name="actions" Type="System.Web.SessionState.SessionStateActions&amp;" RefType="out" />
</Parameters>
<Docs>
<param name="context">To be added.</param>
<param name="id">To be added.</param>
<param name="locked">To be added.</param>
<param name="lockAge">To be added.</param>
<param name="lockId">To be added.</param>
<param name="actions">To be added.</param>
<summary>To be added.</summary>
<returns>To be added.</returns>
<remarks>To be added.</remarks>
</Docs>
</Member>
<Member MemberName="InitializeRequest">
<MemberSignature Language="C#" Value="public abstract void InitializeRequest (System.Web.HttpContext context);" />
<MemberType>Method</MemberType>
<AssemblyInfo>
<AssemblyVersion>2.0.0.0</AssemblyVersion>
</AssemblyInfo>
<ReturnValue>
<ReturnType>System.Void</ReturnType>
</ReturnValue>
<Parameters>
<Parameter Name="context" Type="System.Web.HttpContext" />
</Parameters>
<Docs>
<remarks>
<attribution license="cc4" from="Microsoft" modified="false" />
<para>The <see cref="T:System.Web.SessionState.SessionStateModule" /> object calls the <see cref="M:System.Web.SessionState.SessionStateStoreProviderBase.InitializeRequest(System.Web.HttpContext)" /> method before calling any other <see cref="T:System.Web.SessionState.SessionStateStoreProviderBase" /> method. You can use the <see cref="M:System.Web.SessionState.SessionStateStoreProviderBase.InitializeRequest(System.Web.HttpContext)" /> method to perform any per-request initialization required by your session-state store provider.</para>
</remarks>
<summary>
<attribution license="cc4" from="Microsoft" modified="false" />
<para>Called by the <see cref="T:System.Web.SessionState.SessionStateModule" /> object for per-request initialization.</para>
</summary>
<param name="context">
<attribution license="cc4" from="Microsoft" modified="false" />The <see cref="T:System.Web.HttpContext" /> for the current request.</param>
</Docs>
</Member>
<Member MemberName="ReleaseItemExclusive">
<MemberSignature Language="C#" Value="public abstract void ReleaseItemExclusive (System.Web.HttpContext context, string id, object lockId);" />
<MemberType>Method</MemberType>
<AssemblyInfo>
<AssemblyVersion>2.0.0.0</AssemblyVersion>
</AssemblyInfo>
<ReturnValue>
<ReturnType>System.Void</ReturnType>
</ReturnValue>
<Parameters>
<Parameter Name="context" Type="System.Web.HttpContext" />
<Parameter Name="id" Type="System.String" />
<Parameter Name="lockId" Type="System.Object" />
</Parameters>
<Docs>
<remarks>
<attribution license="cc4" from="Microsoft" modified="false" />
<para>The <see cref="T:System.Web.SessionState.SessionStateModule" /> object calls the <see cref="M:System.Web.SessionState.SessionStateStoreProviderBase.ReleaseItemExclusive(System.Web.HttpContext,System.String,System.Object)" /> method to update the expiration date and release a lock on an item in the session data store. It is called at the end of a request, during the <see cref="E:System.Web.HttpApplication.ReleaseRequestState" /> event, if session values are unchanged. If session values have been modified, the <see cref="T:System.Web.SessionState.SessionStateModule" /> object instead calls the <see cref="M:System.Web.SessionState.SessionStateStoreProviderBase.SetAndReleaseItemExclusive(System.Web.HttpContext,System.String,System.Web.SessionState.SessionStateStoreData,System.Object,System.Boolean)" /> method.</para>
<para>The <see cref="T:System.Web.SessionState.SessionStateModule" /> object also calls the <see cref="M:System.Web.SessionState.SessionStateStoreProviderBase.ReleaseItemExclusive(System.Web.HttpContext,System.String,System.Object)" /> method when a lock on an item in the session data store has exceeded the <see cref="P:System.Web.Configuration.HttpRuntimeSection.ExecutionTimeout" /> value. For more information about locking and details about the lock identifier, see "Locking Session-Store Data" in the <see cref="T:System.Web.SessionState.SessionStateStoreProviderBase" /> class overview.</para>
<para>The <see cref="M:System.Web.SessionState.SessionStateStoreProviderBase.ReleaseItemExclusive(System.Web.HttpContext,System.String,System.Object)" /> method only removes the lock from an item in the session data store for the current application that matches the supplied session <paramref name="id" /> and <paramref name="lockId" /> values. If the <paramref name="lockId" /> does not match the one in the data store, the <see cref="M:System.Web.SessionState.SessionStateStoreProviderBase.ReleaseItemExclusive(System.Web.HttpContext,System.String,System.Object)" /> method does nothing.</para>
</remarks>
<summary>
<attribution license="cc4" from="Microsoft" modified="false" />
<para>Releases a lock on an item in the session data store.</para>
</summary>
<param name="context">
<attribution license="cc4" from="Microsoft" modified="false" />The <see cref="T:System.Web.HttpContext" /> for the current request.</param>
<param name="id">
<attribution license="cc4" from="Microsoft" modified="false" />The session identifier for the current request.</param>
<param name="lockId">
<attribution license="cc4" from="Microsoft" modified="false" />The lock identifier for the current request. </param>
</Docs>
</Member>
<Member MemberName="RemoveItem">
<MemberSignature Language="C#" Value="public abstract void RemoveItem (System.Web.HttpContext context, string id, object lockId, System.Web.SessionState.SessionStateStoreData item);" />
<MemberType>Method</MemberType>
<AssemblyInfo>
<AssemblyVersion>2.0.0.0</AssemblyVersion>
</AssemblyInfo>
<ReturnValue>
<ReturnType>System.Void</ReturnType>
</ReturnValue>
<Parameters>
<Parameter Name="context" Type="System.Web.HttpContext" />
<Parameter Name="id" Type="System.String" />
<Parameter Name="lockId" Type="System.Object" />
<Parameter Name="item" Type="System.Web.SessionState.SessionStateStoreData" />
</Parameters>
<Docs>
<remarks>
<attribution license="cc4" from="Microsoft" modified="false" />
<para>The <see cref="T:System.Web.SessionState.SessionStateModule" /> object calls the <see cref="M:System.Web.SessionState.SessionStateStoreProviderBase.RemoveItem(System.Web.HttpContext,System.String,System.Object,System.Web.SessionState.SessionStateStoreData)" /> method at the end of a request, during the <see cref="E:System.Web.HttpApplication.ReleaseRequestState" /> event, to delete the data for a session item from the session data store if the <see cref="M:System.Web.SessionState.HttpSessionState.Abandon" /> method has been called. Only session data for the current application that matches the supplied session <paramref name="id" /> and <paramref name="lockId" /> values is deleted. For more information about locking and details about the lock identifier, see "Locking Session-Store Data" in the <see cref="T:System.Web.SessionState.SessionStateStoreProviderBase" /> class overview.</para>
</remarks>
<summary>
<attribution license="cc4" from="Microsoft" modified="false" />
<para>Deletes item data from the session data store.</para>
</summary>
<param name="context">
<attribution license="cc4" from="Microsoft" modified="false" />The <see cref="T:System.Web.HttpContext" /> for the current request.</param>
<param name="id">
<attribution license="cc4" from="Microsoft" modified="false" />The session identifier for the current request.</param>
<param name="lockId">
<attribution license="cc4" from="Microsoft" modified="false" />The lock identifier for the current request.</param>
<param name="item">
<attribution license="cc4" from="Microsoft" modified="false" />The <see cref="T:System.Web.SessionState.SessionStateStoreData" /> that represents the item to delete from the data store.</param>
</Docs>
</Member>
<Member MemberName="ResetItemTimeout">
<MemberSignature Language="C#" Value="public abstract void ResetItemTimeout (System.Web.HttpContext context, string id);" />
<MemberType>Method</MemberType>
<AssemblyInfo>
<AssemblyVersion>2.0.0.0</AssemblyVersion>
</AssemblyInfo>
<ReturnValue>
<ReturnType>System.Void</ReturnType>
</ReturnValue>
<Parameters>
<Parameter Name="context" Type="System.Web.HttpContext" />
<Parameter Name="id" Type="System.String" />
</Parameters>
<Docs>
<remarks>
<attribution license="cc4" from="Microsoft" modified="false" />
<para>The <see cref="T:System.Web.SessionState.SessionStateModule" /> object calls the <see cref="M:System.Web.SessionState.SessionStateStoreProviderBase.ResetItemTimeout(System.Web.HttpContext,System.String)" /> method to update the expiration date and time for a session to the current date and time plus the session <see cref="P:System.Web.SessionState.HttpSessionState.Timeout" /> value when either:</para>
<list type="bullet">
<item>
<para>the <see cref="P:System.Web.Configuration.PagesSection.EnableSessionState" /> attribute is true, or</para>
</item>
<item>
<para>the request did not raise the <see cref="E:System.Web.HttpApplication.AcquireRequestState" /> and <see cref="E:System.Web.HttpApplication.ReleaseRequestState" /> events due to an error.</para>
</item>
</list>
<para>If an ASP.NET page is requested and the <see cref="P:System.Web.Configuration.PagesSection.EnableSessionState" /> attribute is set to false, the <see cref="M:System.Web.SessionState.SessionStateStoreProviderBase.ResetItemTimeout(System.Web.HttpContext,System.String)" /> method is still called to update the expiration date and time of the data in the session data store.</para>
</remarks>
<summary>
<attribution license="cc4" from="Microsoft" modified="false" />
<para>Updates the expiration date and time of an item in the session data store.</para>
</summary>
<param name="context">
<attribution license="cc4" from="Microsoft" modified="false" />The <see cref="T:System.Web.HttpContext" /> for the current request.</param>
<param name="id">
<attribution license="cc4" from="Microsoft" modified="false" />The session identifier for the current request.</param>
</Docs>
</Member>
<Member MemberName="SetAndReleaseItemExclusive">
<MemberSignature Language="C#" Value="public abstract void SetAndReleaseItemExclusive (System.Web.HttpContext context, string id, System.Web.SessionState.SessionStateStoreData item, object lockId, bool newItem);" />
<MemberType>Method</MemberType>
<AssemblyInfo>
<AssemblyVersion>2.0.0.0</AssemblyVersion>
</AssemblyInfo>
<ReturnValue>
<ReturnType>System.Void</ReturnType>
</ReturnValue>
<Parameters>
<Parameter Name="context" Type="System.Web.HttpContext" />
<Parameter Name="id" Type="System.String" />
<Parameter Name="item" Type="System.Web.SessionState.SessionStateStoreData" />
<Parameter Name="lockId" Type="System.Object" />
<Parameter Name="newItem" Type="System.Boolean" />
</Parameters>
<Docs>
<remarks>
<attribution license="cc4" from="Microsoft" modified="false" />
<para>The <see cref="T:System.Web.SessionState.SessionStateModule" /> object calls the <see cref="M:System.Web.SessionState.SessionStateStoreProviderBase.SetAndReleaseItemExclusive(System.Web.HttpContext,System.String,System.Web.SessionState.SessionStateStoreData,System.Object,System.Boolean)" /> method at the end of a request, during the <see cref="E:System.Web.HttpApplication.ReleaseRequestState" /> event, to insert current session-item information into the data store or update existing session-item information in the data store with current values, to update the expiration time on the item, and to release the lock on the data. Only session data for the current application that matches the supplied session <paramref name="id" /> and <paramref name="lockId" /> values is updated. For more information about locking, see "Locking Session Store Data" in the <see cref="T:System.Web.SessionState.SessionStateStoreProviderBase" /> class overview.</para>
<para>If the session values for the current request have not been modified, the <see cref="M:System.Web.SessionState.SessionStateStoreProviderBase.SetAndReleaseItemExclusive(System.Web.HttpContext,System.String,System.Web.SessionState.SessionStateStoreData,System.Object,System.Boolean)" /> method is not called. Instead, the <see cref="M:System.Web.SessionState.SessionStateStoreProviderBase.ReleaseItemExclusive(System.Web.HttpContext,System.String,System.Object)" /> method is called.</para>
<para>If the <see cref="M:System.Web.SessionState.HttpSessionState.Abandon" /> method has been called, the <see cref="M:System.Web.SessionState.SessionStateStoreProviderBase.SetAndReleaseItemExclusive(System.Web.HttpContext,System.String,System.Web.SessionState.SessionStateStoreData,System.Object,System.Boolean)" /> method is not called. Instead, the <see cref="T:System.Web.SessionState.SessionStateModule" /> object calls the <see cref="M:System.Web.SessionState.SessionStateStoreProviderBase.RemoveItem(System.Web.HttpContext,System.String,System.Object,System.Web.SessionState.SessionStateStoreData)" /> method to delete session-item data from the data source.</para>
</remarks>
<summary>
<attribution license="cc4" from="Microsoft" modified="false" />
<para>Updates the session-item information in the session-state data store with values from the current request, and clears the lock on the data.</para>
</summary>
<param name="context">
<attribution license="cc4" from="Microsoft" modified="false" />The <see cref="T:System.Web.HttpContext" /> for the current request.</param>
<param name="id">
<attribution license="cc4" from="Microsoft" modified="false" />The session identifier for the current request.</param>
<param name="item">
<attribution license="cc4" from="Microsoft" modified="false" />The <see cref="T:System.Web.SessionState.SessionStateStoreData" /> object that contains the current session values to be stored.</param>
<param name="lockId">
<attribution license="cc4" from="Microsoft" modified="false" />The lock identifier for the current request. </param>
<param name="newItem">
<attribution license="cc4" from="Microsoft" modified="false" />true to identify the session item as a new item; false to identify the session item as an existing item.</param>
</Docs>
</Member>
<Member MemberName="SetItemExpireCallback">
<MemberSignature Language="C#" Value="public abstract bool SetItemExpireCallback (System.Web.SessionState.SessionStateItemExpireCallback expireCallback);" />
<MemberType>Method</MemberType>
<AssemblyInfo>
<AssemblyVersion>2.0.0.0</AssemblyVersion>
</AssemblyInfo>
<ReturnValue>
<ReturnType>System.Boolean</ReturnType>
</ReturnValue>
<Parameters>
<Parameter Name="expireCallback" Type="System.Web.SessionState.SessionStateItemExpireCallback" />
</Parameters>
<Docs>
<remarks>
<attribution license="cc4" from="Microsoft" modified="false" />
<para>The <see cref="T:System.Web.SessionState.SessionStateModule" /> object calls the <see cref="M:System.Web.SessionState.SessionStateStoreProviderBase.SetItemExpireCallback(System.Web.SessionState.SessionStateItemExpireCallback)" /> method when the module is initialized to determine whether calls to the Session_OnEnd event are supported by the <see cref="T:System.Web.SessionState.SessionStateStoreProviderBase" /> implementation and to associate the <see cref="T:System.Web.SessionState.SessionStateItemExpireCallback" /> delegate with the Session_OnEnd event.</para>
<para>Custom session-state store provider implementers should use the <see cref="M:System.Web.SessionState.SessionStateStoreProviderBase.SetItemExpireCallback(System.Web.SessionState.SessionStateItemExpireCallback)" /> method to inform the <see cref="T:System.Web.SessionState.SessionStateModule" /> object whether calls to the Session_OnEnd event are supported and to set a local reference to the <see cref="T:System.Web.SessionState.SessionStateItemExpireCallback" /> delegate supplied by the <paramref name="expireCallback" /> parameter. The custom implementation must decide when the local <see cref="T:System.Web.SessionState.SessionStateItemExpireCallback" /> delegate will be called. For example, the delegate could be called during the call to the <see cref="M:System.Web.SessionState.SessionStateStoreProviderBase.RemoveItem(System.Web.HttpContext,System.String,System.Object,System.Web.SessionState.SessionStateStoreData)" /> method, which is called when a session is abandoned.</para>
</remarks>
<summary>
<attribution license="cc4" from="Microsoft" modified="false" />
<para>Sets a reference to the <see cref="T:System.Web.SessionState.SessionStateItemExpireCallback" /> delegate for the Session_OnEnd event defined in the Global.asax file.</para>
</summary>
<returns>
<attribution license="cc4" from="Microsoft" modified="false" />
<para>true if the session-state store provider supports calling the Session_OnEnd event; otherwise, false.</para>
</returns>
<param name="expireCallback">
<attribution license="cc4" from="Microsoft" modified="false" />The <see cref="T:System.Web.SessionState.SessionStateItemExpireCallback" /> delegate for the Session_OnEnd event defined in the Global.asax file.</param>
</Docs>
</Member>
</Members>
</Type>

View File

@@ -0,0 +1,218 @@
<?xml version="1.0" encoding="utf-8"?>
<Type Name="SessionStateUtility" FullName="System.Web.SessionState.SessionStateUtility">
<TypeSignature Language="C#" Value="public static class SessionStateUtility" />
<AssemblyInfo>
<AssemblyName>System.Web</AssemblyName>
<AssemblyVersion>2.0.0.0</AssemblyVersion>
</AssemblyInfo>
<Base>
<BaseTypeName>System.Object</BaseTypeName>
</Base>
<Interfaces />
<Docs>
<remarks>
<attribution license="cc4" from="Microsoft" modified="false" />
<para>The <see cref="T:System.Web.SessionState.SessionStateUtility" /> class provides static helper methods that are used by a session-state module or a session-state store provider. Application developers will not need to call these methods from their code.</para>
<para>The following table describes the ways the session-state module and session-state store provider use the methods.</para>
<list type="table">
<listheader>
<item>
<term>
<para>Method</para>
</term>
<description>
<para>Use</para>
</description>
</item>
</listheader>
<item>
<term>
<para>
<see cref="M:System.Web.SessionState.SessionStateUtility.GetHttpSessionStateFromContext(System.Web.HttpContext)" /> method</para>
</term>
<description>
<para>Can be used by custom session-state modules to either retrieve session information for an existing session or create session information for a new session.</para>
</description>
</item>
<item>
<term>
<para>
<see cref="M:System.Web.SessionState.SessionStateUtility.AddHttpSessionStateToContext(System.Web.HttpContext,System.Web.SessionState.IHttpSessionState)" /> method</para>
</term>
<description>
<para>Called by the session-state module to add the session data to the current <see cref="T:System.Web.HttpContext" /> and make it available to application code through the <see cref="P:System.Web.HttpContext.Session" /> property.</para>
</description>
</item>
<item>
<term>
<para>
<see cref="M:System.Web.SessionState.SessionStateUtility.RemoveHttpSessionStateFromContext(System.Web.HttpContext)" /> method</para>
</term>
<description>
<para>Called by the session-state module during the <see cref="E:System.Web.HttpApplication.ReleaseRequestState" /> or <see cref="E:System.Web.HttpApplication.EndRequest" /> events at the end of a request, to clear session data from the current <see cref="T:System.Web.HttpContext" />.</para>
</description>
</item>
<item>
<term>
<para>
<see cref="M:System.Web.SessionState.SessionStateUtility.GetSessionStaticObjects(System.Web.HttpContext)" /> method</para>
</term>
<description>
<para>Called by the session-state module to get a reference to the <see cref="P:System.Web.SessionState.HttpSessionState.StaticObjects" /> collection based on objects defined in the Global.asax file. The <see cref="T:System.Web.HttpStaticObjectsCollection" /> collection returned is included with the session data added to the current <see cref="T:System.Web.HttpContext" />.</para>
</description>
</item>
</list>
<para>Session data is passed to and retrieved from the current <see cref="T:System.Web.HttpContext" /> as an <see cref="T:System.Web.SessionState.HttpSessionStateContainer" /> object or any valid implementation of the <see cref="T:System.Web.SessionState.IHttpSessionState" /> interface.</para>
<para>For information about implementing a session-state store provider, see <format type="text/html"><a href="baadfec5-c881-468a-9681-7d8796b05a66">Implementing a Session State Store Provider</a></format>.</para>
</remarks>
<summary>
<attribution license="cc4" from="Microsoft" modified="false" />
<para>Provides helper methods used by session-state modules and session-state store providers to manage session information for an ASP.NET application. This class cannot be inherited.</para>
</summary>
</Docs>
<Members>
<Member MemberName="AddHttpSessionStateToContext">
<MemberSignature Language="C#" Value="public static void AddHttpSessionStateToContext (System.Web.HttpContext context, System.Web.SessionState.IHttpSessionState container);" />
<MemberType>Method</MemberType>
<AssemblyInfo>
<AssemblyVersion>2.0.0.0</AssemblyVersion>
</AssemblyInfo>
<ReturnValue>
<ReturnType>System.Void</ReturnType>
</ReturnValue>
<Parameters>
<Parameter Name="context" Type="System.Web.HttpContext" />
<Parameter Name="container" Type="System.Web.SessionState.IHttpSessionState" />
</Parameters>
<Docs>
<remarks>
<attribution license="cc4" from="Microsoft" modified="false" />
<para>The <see cref="M:System.Web.SessionState.SessionStateUtility.AddHttpSessionStateToContext(System.Web.HttpContext,System.Web.SessionState.IHttpSessionState)" /> method is used by a session-state module to apply session data to the current request. This occurs during the <see cref="E:System.Web.HttpApplication.AcquireRequestState" /> event at the beginning of a request. Session data for the current request is either retrieved for an existing session or created for a new session. The session data is then encapsulated in an <see cref="T:System.Web.SessionState.IHttpSessionState" /> implementation instance, which is passed to the <see cref="M:System.Web.SessionState.SessionStateUtility.AddHttpSessionStateToContext(System.Web.HttpContext,System.Web.SessionState.IHttpSessionState)" /> method along with the current <see cref="T:System.Web.HttpContext" />. The supplied session data is then made available to application code through the <see cref="P:System.Web.HttpContext.Session" /> property of the current context.</para>
</remarks>
<summary>
<attribution license="cc4" from="Microsoft" modified="false" />
<para>Applies the session data to the context for the current request.</para>
</summary>
<param name="context">
<attribution license="cc4" from="Microsoft" modified="false" />The <see cref="T:System.Web.HttpContext" /> object to which to add the <see cref="T:System.Web.SessionState.HttpSessionState" /> object.</param>
<param name="container">
<attribution license="cc4" from="Microsoft" modified="false" />The <see cref="T:System.Web.SessionState.IHttpSessionState" /> implementation instance to add to the specified HTTP context.</param>
</Docs>
</Member>
<Member MemberName="GetHttpSessionStateFromContext">
<MemberSignature Language="C#" Value="public static System.Web.SessionState.IHttpSessionState GetHttpSessionStateFromContext (System.Web.HttpContext context);" />
<MemberType>Method</MemberType>
<AssemblyInfo>
<AssemblyVersion>2.0.0.0</AssemblyVersion>
</AssemblyInfo>
<ReturnValue>
<ReturnType>System.Web.SessionState.IHttpSessionState</ReturnType>
</ReturnValue>
<Parameters>
<Parameter Name="context" Type="System.Web.HttpContext" />
</Parameters>
<Docs>
<remarks>
<attribution license="cc4" from="Microsoft" modified="false" />
<para>The <see cref="M:System.Web.SessionState.SessionStateUtility.GetHttpSessionStateFromContext(System.Web.HttpContext)" /> method can be used by a session-state module to retrieve session data from the current request. This occurs during the <see cref="E:System.Web.HttpApplication.ReleaseRequestState" /> event at the end of a request. The returned session data can then be written to the session data store. If the session has been abandoned, the session data can be removed from the data store and <see cref="T:System.Web.HttpContext" />, and the <system>Session_OnEnd</system> event can be executed. </para>
</remarks>
<summary>
<attribution license="cc4" from="Microsoft" modified="false" />
<para>Retrieves session data from the context for the current request.</para>
</summary>
<returns>
<attribution license="cc4" from="Microsoft" modified="false" />
<para>An <see cref="T:System.Web.SessionState.IHttpSessionState" /> implementation instance populated with session data from the current request.</para>
</returns>
<param name="context">
<attribution license="cc4" from="Microsoft" modified="false" />The <see cref="T:System.Web.HttpContext" /> from which to retrieve session data.</param>
</Docs>
</Member>
<Member MemberName="GetSessionStaticObjects">
<MemberSignature Language="C#" Value="public static System.Web.HttpStaticObjectsCollection GetSessionStaticObjects (System.Web.HttpContext context);" />
<MemberType>Method</MemberType>
<AssemblyInfo>
<AssemblyVersion>2.0.0.0</AssemblyVersion>
</AssemblyInfo>
<ReturnValue>
<ReturnType>System.Web.HttpStaticObjectsCollection</ReturnType>
</ReturnValue>
<Parameters>
<Parameter Name="context" Type="System.Web.HttpContext" />
</Parameters>
<Docs>
<remarks>
<attribution license="cc4" from="Microsoft" modified="false" />
<para>The <see cref="M:System.Web.SessionState.SessionStateUtility.GetSessionStaticObjects(System.Web.HttpContext)" /> method is used to retrieve the collection of static objects defined in the Global.asax file for the ASP.NET application. A session-state module implementation will supply the returned <see cref="T:System.Web.HttpStaticObjectsCollection" /> collection to the <see cref="T:System.Web.SessionState.IHttpSessionState" /> implementation instance that is added to the current context using the <see cref="M:System.Web.SessionState.SessionStateUtility.AddHttpSessionStateToContext(System.Web.HttpContext,System.Web.SessionState.IHttpSessionState)" /> method.</para>
<para>A <see cref="T:System.Web.SessionState.SessionStateStoreProviderBase" /> can also use the <see cref="M:System.Web.SessionState.SessionStateUtility.GetSessionStaticObjects(System.Web.HttpContext)" /> method when creating a <see cref="T:System.Web.SessionState.SessionStateStoreData" /> object.</para>
</remarks>
<summary>
<attribution license="cc4" from="Microsoft" modified="false" />
<para>Gets a reference to the static objects collection for the specified context.</para>
</summary>
<returns>
<attribution license="cc4" from="Microsoft" modified="false" />
<para>An <see cref="T:System.Web.HttpStaticObjectsCollection" /> collection populated with the <see cref="P:System.Web.SessionState.HttpSessionState.StaticObjects" /> property value for the specified <see cref="T:System.Web.HttpContext" />.</para>
</returns>
<param name="context">
<attribution license="cc4" from="Microsoft" modified="false" />The <see cref="T:System.Web.HttpContext" /> from which to get the static objects collection.</param>
</Docs>
</Member>
<Member MemberName="RaiseSessionEnd">
<MemberSignature Language="C#" Value="public static void RaiseSessionEnd (System.Web.SessionState.IHttpSessionState session, object eventSource, EventArgs eventArgs);" />
<MemberType>Method</MemberType>
<AssemblyInfo>
<AssemblyVersion>2.0.0.0</AssemblyVersion>
</AssemblyInfo>
<ReturnValue>
<ReturnType>System.Void</ReturnType>
</ReturnValue>
<Parameters>
<Parameter Name="session" Type="System.Web.SessionState.IHttpSessionState" />
<Parameter Name="eventSource" Type="System.Object" />
<Parameter Name="eventArgs" Type="System.EventArgs" />
</Parameters>
<Docs>
<remarks>
<attribution license="cc4" from="Microsoft" modified="false" />
<para>The <see cref="M:System.Web.SessionState.SessionStateUtility.RaiseSessionEnd(System.Web.SessionState.IHttpSessionState,System.Object,System.EventArgs)" /> method is used by a session-state module to execute the <system>Session_OnEnd</system> event defined in the Global.asax file for an ASP.NET application. A session-state module will call the <see cref="M:System.Web.SessionState.SessionStateUtility.RaiseSessionEnd(System.Web.SessionState.IHttpSessionState,System.Object,System.EventArgs)" /> method when a session has been abandoned, or if the session expires.</para>
</remarks>
<summary>
<attribution license="cc4" from="Microsoft" modified="false" />
<para>Executes the <system>Session_OnEnd</system> event defined in the Global.asax file for the ASP.NET application.</para>
</summary>
<param name="session">
<attribution license="cc4" from="Microsoft" modified="false" />The <see cref="T:System.Web.SessionState.IHttpSessionState" /> implementation instance for the session that has ended.</param>
<param name="eventSource">
<attribution license="cc4" from="Microsoft" modified="false" />The event source object to supply to the Session_OnEnd event.</param>
<param name="eventArgs">
<attribution license="cc4" from="Microsoft" modified="false" />The <see cref="T:System.EventArgs" /> object to supply to the Session_OnEnd event.</param>
</Docs>
</Member>
<Member MemberName="RemoveHttpSessionStateFromContext">
<MemberSignature Language="C#" Value="public static void RemoveHttpSessionStateFromContext (System.Web.HttpContext context);" />
<MemberType>Method</MemberType>
<AssemblyInfo>
<AssemblyVersion>2.0.0.0</AssemblyVersion>
</AssemblyInfo>
<ReturnValue>
<ReturnType>System.Void</ReturnType>
</ReturnValue>
<Parameters>
<Parameter Name="context" Type="System.Web.HttpContext" />
</Parameters>
<Docs>
<remarks>
<attribution license="cc4" from="Microsoft" modified="false" />
<para>The <see cref="M:System.Web.SessionState.SessionStateUtility.RemoveHttpSessionStateFromContext(System.Web.HttpContext)" /> method clears session data from the specified <see cref="T:System.Web.HttpContext" />. A session-state module will call the <see cref="M:System.Web.SessionState.SessionStateUtility.RemoveHttpSessionStateFromContext(System.Web.HttpContext)" /> method in the handler for the <see cref="E:System.Web.HttpApplication.ReleaseRequestState" /> event.</para>
</remarks>
<summary>
<attribution license="cc4" from="Microsoft" modified="false" />
<para>Removes session data from the specified context.</para>
</summary>
<param name="context">
<attribution license="cc4" from="Microsoft" modified="false" />The <see cref="T:System.Web.HttpContext" /> from which to remove session data.</param>
</Docs>
</Member>
</Members>
</Type>

View File

@@ -0,0 +1,179 @@
<?xml version="1.0" encoding="utf-8"?>
<Type Name="StateRuntime" FullName="System.Web.SessionState.StateRuntime">
<TypeSignature Language="C#" Maintainer="auto" Value="public sealed class StateRuntime : System.Web.SessionState.IStateRuntime" />
<AssemblyInfo>
<AssemblyName>System.Web</AssemblyName>
<AssemblyPublicKey>
</AssemblyPublicKey>
<AssemblyVersion>1.0.5000.0</AssemblyVersion>
<AssemblyVersion>2.0.0.0</AssemblyVersion>
</AssemblyInfo>
<ThreadSafetyStatement>Gtk# is thread aware, but not thread safe; See the &lt;link location="node:gtk-sharp/programming/threads"&gt;Gtk# Thread Programming&lt;/link&gt; for details.</ThreadSafetyStatement>
<Base>
<BaseTypeName>System.Object</BaseTypeName>
</Base>
<Interfaces>
<Interface>
<InterfaceName>System.Web.SessionState.IStateRuntime</InterfaceName>
</Interface>
</Interfaces>
<Docs>
<remarks>
<attribution license="cc4" from="Microsoft" modified="false" />
<para>ASP.NET supports the option of managing session state out-of-process using a Windows service called the ASP.NET state service. The <see cref="T:System.Web.SessionState.StateRuntime" /> class is used by unmanaged code in this service to manage session data. This class supports the .NET Framework infrastructure implementation of the ASP.NET state service and is not intended be used directly from your code.</para>
<para>The ASP.NET state service is not the default method of ASP.NET session-state management; ASP.NET supports an in-process management of session state by default. It also supports a second out-of-process option that manages session state in a Microsoft SQL Server database and enables custom session-state management solutions. For more information about session-state storage options, see <format type="text/html"><a href="0bb0a3a3-650f-4c47-a0c5-b08b9b591bb4">Session-State Modes</a></format>.</para>
</remarks>
<summary>
<attribution license="cc4" from="Microsoft" modified="false" />
<para>Manages session data stored in the ASP.NET state service. This class cannot be inherited.</para>
</summary>
</Docs>
<Members>
<Member MemberName=".ctor">
<MemberSignature Language="C#" Value="public StateRuntime ();" />
<MemberType>Constructor</MemberType>
<ReturnValue />
<Parameters />
<Docs>
<remarks>
<attribution license="cc4" from="Microsoft" modified="false" />
<para>This member supports the .NET Framework infrastructure implementation of the ASP.NET state service and is not intended be used directly from your code. For more information about session-state storage options, see <format type="text/html"><a href="0bb0a3a3-650f-4c47-a0c5-b08b9b591bb4">Session-State Modes</a></format>.</para>
</remarks>
<summary>
<attribution license="cc4" from="Microsoft" modified="false" />
<para>Initializes a new instance of the <see cref="T:System.Web.SessionState.StateRuntime" /> class.</para>
</summary>
</Docs>
<AssemblyInfo>
<AssemblyVersion>1.0.5000.0</AssemblyVersion>
<AssemblyVersion>2.0.0.0</AssemblyVersion>
</AssemblyInfo>
</Member>
<Member MemberName="ProcessRequest">
<MemberSignature Language="C#" Value="public void ProcessRequest (IntPtr tracker, int verb, string uri, int exclusive, int timeout, int lockCookieExists, int lockCookie, int contentLength, IntPtr content);" />
<MemberType>Method</MemberType>
<ReturnValue>
<ReturnType>System.Void</ReturnType>
</ReturnValue>
<Parameters>
<Parameter Name="tracker" Type="System.IntPtr" />
<Parameter Name="verb" Type="System.Int32" />
<Parameter Name="uri" Type="System.String" />
<Parameter Name="exclusive" Type="System.Int32" />
<Parameter Name="timeout" Type="System.Int32" />
<Parameter Name="lockCookieExists" Type="System.Int32" />
<Parameter Name="lockCookie" Type="System.Int32" />
<Parameter Name="contentLength" Type="System.Int32" />
<Parameter Name="content" Type="System.IntPtr" />
</Parameters>
<Docs>
<remarks>
<attribution license="cc4" from="Microsoft" modified="false" />
<para>ASP.NET supports the option of managing session state out-of-process using a Windows service called the ASP.NET state service. The <see cref="M:System.Web.SessionState.StateRuntime.ProcessRequest(System.IntPtr,System.Int32,System.String,System.Int32,System.Int32,System.Int32,System.Int32,System.Int32,System.Int32,System.IntPtr)" /> method is used by unmanaged code in this service to manage the session data.</para>
<para>This member supports the .NET Framework infrastructure implementation of the ASP.NET state service and is not intended be used directly from your code. For more information about session-state storage options, see <format type="text/html"><a href="0bb0a3a3-650f-4c47-a0c5-b08b9b591bb4">Session-State Modes</a></format>.</para>
</remarks>
<summary>
<attribution license="cc4" from="Microsoft" modified="false" />
<para>Used by the ASP.NET state server to process session data.</para>
</summary>
<param name="tracker">
<attribution license="cc4" from="Microsoft" modified="false" />An <see cref="T:System.IntPtr" /> pointer to an object stored in the unmanaged ASP.NET state server.</param>
<param name="verb">
<attribution license="cc4" from="Microsoft" modified="false" />The action to take on the object.</param>
<param name="uri">
<attribution license="cc4" from="Microsoft" modified="false" />An identifier for the session.</param>
<param name="exclusive">
<attribution license="cc4" from="Microsoft" modified="false" />The type of access to objects in the store.</param>
<param name="timeout">
<attribution license="cc4" from="Microsoft" modified="false" />The number of minutes the session data is stored.</param>
<param name="lockCookieExists">
<attribution license="cc4" from="Microsoft" modified="false" />A value that indicates whether the lock cookie exists in the original request from the ASP.NET Web server to the ASP.NET state server.</param>
<param name="lockCookie">
<attribution license="cc4" from="Microsoft" modified="false" />The owner of the lock on the session state.</param>
<param name="contentLength">
<attribution license="cc4" from="Microsoft" modified="false" />The length, in bytes, of the data stored for the session.</param>
<param name="content">
<attribution license="cc4" from="Microsoft" modified="false" />An <see cref="T:System.IntPtr" /> pointer to the content stored for the session in the unmanaged ASP.NET state server.</param>
</Docs>
<AssemblyInfo>
<AssemblyVersion>1.0.5000.0</AssemblyVersion>
<AssemblyVersion>2.0.0.0</AssemblyVersion>
</AssemblyInfo>
</Member>
<Member MemberName="ProcessRequest">
<MemberSignature Language="C#" Value="public void ProcessRequest (IntPtr tracker, int verb, string uri, int exclusive, int extraFlags, int timeout, int lockCookieExists, int lockCookie, int contentLength, IntPtr content);" />
<MemberType>Method</MemberType>
<AssemblyInfo>
<AssemblyVersion>2.0.0.0</AssemblyVersion>
</AssemblyInfo>
<ReturnValue>
<ReturnType>System.Void</ReturnType>
</ReturnValue>
<Parameters>
<Parameter Name="tracker" Type="System.IntPtr" />
<Parameter Name="verb" Type="System.Int32" />
<Parameter Name="uri" Type="System.String" />
<Parameter Name="exclusive" Type="System.Int32" />
<Parameter Name="extraFlags" Type="System.Int32" />
<Parameter Name="timeout" Type="System.Int32" />
<Parameter Name="lockCookieExists" Type="System.Int32" />
<Parameter Name="lockCookie" Type="System.Int32" />
<Parameter Name="contentLength" Type="System.Int32" />
<Parameter Name="content" Type="System.IntPtr" />
</Parameters>
<Docs>
<remarks>
<attribution license="cc4" from="Microsoft" modified="false" />
<para>ASP.NET supports the option of managing session state out-of-process using a Windows service called the ASP.NET state service. The <see cref="M:System.Web.SessionState.StateRuntime.ProcessRequest(System.IntPtr,System.Int32,System.String,System.Int32,System.Int32,System.Int32,System.Int32,System.Int32,System.Int32,System.IntPtr)" /> method is used by unmanaged code in this service to manage the session data.</para>
<para>This member supports the .NET Framework infrastructure implementation of the ASP.NET state service and is not intended be used directly from your code. For more information about session-state storage options, see <format type="text/html"><a href="0bb0a3a3-650f-4c47-a0c5-b08b9b591bb4">Session-State Modes</a></format>.</para>
</remarks>
<summary>
<attribution license="cc4" from="Microsoft" modified="false" />
<para>Used by the ASP.NET state server to process session data.</para>
</summary>
<param name="tracker">
<attribution license="cc4" from="Microsoft" modified="false" />An <see cref="T:System.IntPtr" /> pointer to an object stored in the unmanaged ASP.NET state server.</param>
<param name="verb">
<attribution license="cc4" from="Microsoft" modified="false" />The action to take on the object.</param>
<param name="uri">
<attribution license="cc4" from="Microsoft" modified="false" />An identifier for the session.</param>
<param name="exclusive">
<attribution license="cc4" from="Microsoft" modified="false" />The type of access to objects in the store.</param>
<param name="extraFlags">
<attribution license="cc4" from="Microsoft" modified="false" />A value that indicates whether the current session is an uninitialized, cookieless session.</param>
<param name="timeout">
<attribution license="cc4" from="Microsoft" modified="false" />The number of minutes the session data is stored.</param>
<param name="lockCookieExists">
<attribution license="cc4" from="Microsoft" modified="false" />A value that indicates whether the lock cookie exists in the original request from the ASP.NET Web server to the ASP.NET state server.</param>
<param name="lockCookie">
<attribution license="cc4" from="Microsoft" modified="false" />The owner of the lock on the session state.</param>
<param name="contentLength">
<attribution license="cc4" from="Microsoft" modified="false" />The length, in bytes, of the data stored for the session.</param>
<param name="content">
<attribution license="cc4" from="Microsoft" modified="false" />An <see cref="T:System.IntPtr" /> pointer to the content stored for the session in the unmanaged ASP.NET state server.</param>
</Docs>
</Member>
<Member MemberName="StopProcessing">
<MemberSignature Language="C#" Value="public void StopProcessing ();" />
<MemberType>Method</MemberType>
<ReturnValue>
<ReturnType>System.Void</ReturnType>
</ReturnValue>
<Parameters />
<Docs>
<remarks>
<attribution license="cc4" from="Microsoft" modified="false" />
<para>ASP.NET supports the option of managing session state out-of-process using a Windows service called the ASP.NET state service. The <see cref="M:System.Web.SessionState.StateRuntime.StopProcessing" /> method is used by unmanaged code in this service to stop processing the session data. This member is provided to support the .NET Framework infrastructure implementation of the ASP.NET state service and is not intended be used directly from your code. For more information about session state storage options, see <format type="text/html"><a href="0bb0a3a3-650f-4c47-a0c5-b08b9b591bb4">Session-State Modes</a></format>.</para>
</remarks>
<summary>
<attribution license="cc4" from="Microsoft" modified="false" />
<para>Stops the processing of session data stored in the ASP.NET state server.</para>
</summary>
</Docs>
<AssemblyInfo>
<AssemblyVersion>1.0.5000.0</AssemblyVersion>
<AssemblyVersion>2.0.0.0</AssemblyVersion>
</AssemblyInfo>
</Member>
</Members>
</Type>