InstanceContextMode InstanceContextMode InstanceContextMode InstanceContextMode Enum

Definition

Gibt die Anzahl von Dienstinstanzen an, die verfügbar sind, um die in eingehenden Nachrichten enthaltenen Aufrufe zu behandeln.Specifies the number of service instances available for handling calls that are contained in incoming messages.

public enum class InstanceContextMode
public enum InstanceContextMode
type InstanceContextMode = 
Public Enum InstanceContextMode
Vererbung
InstanceContextModeInstanceContextModeInstanceContextModeInstanceContextMode

Felder

PerCall PerCall PerCall PerCall 1

Ein neues InstanceContext-Objekt wird vor jedem Aufruf erstellt und im Anschluss wiederverwendet.A new InstanceContext object is created prior to and recycled subsequent to each call.

PerSession PerSession PerSession PerSession 0

Ein neues InstanceContext-Objekt wird zu jeder Sitzung erstellt.A new InstanceContext object is created for each session. Wenn der Kanal keine Sitzung erstellt, verhält sich dieser Wert wie PerCall.If the channel does not create a session this value behaves as if it were PerCall.

Single Single Single Single 2

Nur ein InstanceContext-Objekt wird für alle eingehenden Aufrufe verwendet und nicht bei den nachfolgenden Aufrufen wiederverwendet.Only one InstanceContext object is used for all incoming calls and is not recycled subsequent to the calls. Wenn ein Dienstobjekt nicht vorhanden ist, wird eins erstellt.If a service object does not exist, one is created.

Beispiele

Am folgenden Code ist zu erkennen, wie InstanceContextMode für eine Dienstklasse angegeben wird:The following code illustrates how to set the InstanceContextMode for a service class:

// 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;
    }
}
' 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

Hinweise

Die System.ServiceModel.InstanceContext -Klasse verwaltet die Zuordnung zwischen dem Kanal und den benutzerdefinierten Dienst Objekten.The System.ServiceModel.InstanceContext class manages the association between the channel and the user-defined service objects. Verwenden Sie die InstanceContextMode-Enumeration mit der ServiceBehaviorAttribute.InstanceContextMode-Eigenschaft, um die Lebensdauer des InstanceContext-Objekts anzugeben.Use the InstanceContextMode enumeration with the ServiceBehaviorAttribute.InstanceContextMode property to specify the lifetime of the InstanceContext object. Windows Communication Foundation (WCF) kann ein neues InstanceContext -Objekt für jeden-Befehl, jede Sitzung, erstellen oder angeben, dass das InstanceContext Objekt an ein einzelnes Dienst Objekt gebunden ist.Windows Communication Foundation (WCF) can create a new InstanceContext object for every call, every session, or specify that the InstanceContext object is bound to a single service object. Ein funktionierendes Beispiel finden Sie unter Instancing.For a working example, see Instancing.

Der Single-Wert gibt an, dass ein einzelnes InstanceContext-Objekt für die gesamte Lebensdauer des Dienstes verwendet werden sollte.The Single value specifies that a single InstanceContext object should be used for the lifetime of the service. Mit dem Single Wert sind mehrere Einschränkungen verknüpft:Several caveats are associated with the Single value:

Gilt für:

Siehe auch