クリックして評価とフィードバックをお寄せください
MSDN
MSDN ライブラリ
.NET 開発
.NET Framework 3.5
.NET Framework 3.5
System.ServiceModel 名前空間
 InstanceContextMode 列挙体

  低帯域幅での表示をオンにする
このページは次のバージョンについて記述しています。
Microsoft Visual Studio 2008/.NET Framework 3.5

その他のバージョンについては、以下の情報を参照してください。
.NET Framework クラス ライブラリ
InstanceContextMode 列挙体

更新 : 2007 年 11 月

入力メッセージに含まれている呼び出しを処理するために使用できるサービス インスタンスの数を指定します。

名前空間 :  System.ServiceModel
アセンブリ :  System.ServiceModel (System.ServiceModel.dll 内)
Visual Basic (宣言)
Public Enumeration InstanceContextMode
Visual Basic (使用法)
Dim instance As InstanceContextMode
C#
public enum InstanceContextMode
Visual C++
public enum class InstanceContextMode
J#
public enum InstanceContextMode
JScript
public enum InstanceContextMode
メンバ名説明
PerSessionセッションごとに新しい InstanceContext オブジェクトを作成します。
PerCallそれぞれの呼び出しの前に新しい InstanceContext オブジェクトを作成し、その後、そのオブジェクトをリサイクルします。チャネルがセッションを作成しない場合、この値は、PerCall であるかのように動作します。
Singleすべての着信呼び出しに対して 1 つの InstanceContext オブジェクトだけを使用し、その後、そのオブジェクトをリサイクルしません。サービス オブジェクトが存在しない場合は、1 つ作成されます。

System.ServiceModel..::.InstanceContext は、チャネルとユーザー定義サービス オブジェクトとの関連付けを管理します。ServiceBehaviorAttribute..::.InstanceContextMode プロパティを持つ InstanceContextMode 列挙型を使用して、InstanceContext オブジェクトの有効期間を指定します。Windows Communication Foundation (WCF) では、すべてのセッションのすべての呼び出しに対して新しい InstanceContext オブジェクトを作成できます。または、InstanceContext オブジェクトを単一のサービス オブジェクトにバインドすることを指定できます。実施例については、「インスタンス化」を参照してください。

Single 値は、サービスの有効期間の間、単一の InstanceContext オブジェクトを使用する必要があることを指定します。

ms586708.alert_note(ja-jp,VS.90).gifメモ :

InstanceContextMode 値を Single に設定した場合は、ConcurrencyMode 値を Multiple に設定しない限り、サービスが 1 度に 1 つのメッセージだけを処理する結果となります。

サービス クラスに対して InstanceContextMode を設定する方法を次のコード例に示します。

Visual Basic
' Service class which implements the service contract.
Public Class CalculatorService
Implements ICalculator

    Public Function Add(n1 As Double, n2 As Double) As Double Implements ICalculator.Add
        Return n1 + n2
    End Function

    Public Function Subtract(n1 As Double, n2 As Double) As Double Implements ICalculator.Subtract
        Return n1 - n2
    End Function

    Public Function Multiply(n1 As Double, n2 As Double) As Double Implements ICalculator.Multiply
        Return n1 * n2
    End Function

    Public Function Divide(n1 As Double, n2 As Double) As Double Implements ICalculator.Divide
        Return n1 / n2
    End Function

End Class


C#
// Service class which implements the service contract.
[ServiceBehavior(InstanceContextMode=InstanceContextMode.PerSession)]
public class CalculatorService : ICalculator
{
    public double Add(double n1, double n2)
    {
        return n1 + n2;
    }

    public double Subtract(double n1, double n2)
    {
        return n1 - n2;
    }

    public double Multiply(double n1, double n2)
    {
        return n1 * n2;
    }

    public double Divide(double n1, double n2)
    {
        return n1 / n2;
    }
}

Windows Vista, Windows XP SP2, Windows Server 2003

.NET Framework および .NET Compact Framework では、各プラットフォームのすべてのバージョンはサポートしていません。サポートされているバージョンについては、「.NET Framework システム要件」を参照してください。

.NET Framework

サポート対象 : 3.5、3.0
コミュニティ コンテンツ   コミュニティ コンテンツとは
新しいコンテンツの追加 RSS  注釈
Processing
© 2009 Microsoft Corporation. All rights reserved. 使用条件  |  商標  |  プライバシー
Page view tracker