<?xml version="1.0" encoding="utf-8"?>
<Type Name="ISession" FullName="System.ServiceModel.Channels.ISession">
  <TypeSignature Language="C#" Value="public interface ISession" />
  <TypeSignature Language="ILAsm" Value=".class public interface auto ansi abstract ISession" />
  <AssemblyInfo>
    <AssemblyName>System.ServiceModel</AssemblyName>
    <AssemblyVersion>4.0.0.0</AssemblyVersion>
  </AssemblyInfo>
  <Interfaces />
  <Docs>
    <remarks>
      <attribution license="cc4" from="Microsoft" modified="false" />
      <para>The <see cref="T:System.ServiceModel.Channels.ISession" /> interface is the base interface for all sessions. It contains a <see cref="P:System.ServiceModel.Channels.ISession.ID" /> property for identifying the session.</para>
      <para>A session is a shared context among all participants in a communication exchange. This shared context is characterized by the following three properties: </para>
      <list type="bullet">
        <item>
          <para>Session establishment - a process for establishing shared context among all participants. </para>
        </item>
        <item>
          <para>Message correlation - a method for correlating a group of messages to an instance of shared context. </para>
        </item>
        <item>
          <para>The <see cref="T:System.ServiceModel.Channels.ISession" /> interface is not informed as to the number of participants in a session or the lifetime of a session.</para>
        </item>
      </list>
      <para>These session properties are provided by associating an ID with a session. </para>
      <para>
        <see cref="T:System.ServiceModel.Channels.ISession" /> is inherited by:</para>
      <list type="bullet">
        <item>
          <para>
            <see cref="T:System.ServiceModel.Channels.IInputSession" />
          </para>
        </item>
        <item>
          <para>
            <see cref="T:System.ServiceModel.Channels.IOutputSession" />
          </para>
        </item>
        <item>
          <para>
            <see cref="T:System.ServiceModel.Channels.IDuplexSession" />
          </para>
        </item>
        <item>
          <para>
            <see cref="T:System.ServiceModel.Channels.ISessionChannel`1" /> of type <see cref="T:System.ServiceModel.Channels.ISession" /></para>
        </item>
      </list>
    </remarks>
    <summary>
      <attribution license="cc4" from="Microsoft" modified="false" />
      <para>Defines the interface to establish a shared context among parties that exchange messages by providing an ID for the communication session. </para>
    </summary>
  </Docs>
  <Members>
    <Member MemberName="Id">
      <MemberSignature Language="C#" Value="public string Id { get; }" />
      <MemberSignature Language="ILAsm" Value=".property instance string Id" />
      <MemberType>Property</MemberType>
      <AssemblyInfo>
        <AssemblyVersion>4.0.0.0</AssemblyVersion>
      </AssemblyInfo>
      <ReturnValue>
        <ReturnType>System.String</ReturnType>
      </ReturnValue>
      <Docs>
        <value>To be added.</value>
        <remarks>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>If the session is interrupted, it can be retrieved using the <see cref="P:System.ServiceModel.Channels.ISession.Id" />.</para>
        </remarks>
        <summary>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>Gets the ID that uniquely identifies the session. </para>
        </summary>
      </Docs>
    </Member>
  </Members>
</Type>