InstanceContext.GetServiceInstance Metode

Definisi

Mengembalikan instans layanan.

Overload

Nama Deskripsi
GetServiceInstance()

Mengembalikan instans layanan untuk konteks instans.

GetServiceInstance(Message)

Mengembalikan instans layanan untuk konteks instans sebagai respons terhadap pesan masuk.

GetServiceInstance()

Mengembalikan instans layanan untuk konteks instans.

public:
 System::Object ^ GetServiceInstance();
public object GetServiceInstance();
member this.GetServiceInstance : unit -> obj
Public Function GetServiceInstance () As Object

Mengembalikan

Objek yang mewakili instans layanan.

Pengecualian

Instans layanan dalam status dibuat atau dibuka atau tidak diinisialisasi.

Instans layanan dibatalkan.

Instans layanan telah ditutup dan tidak dapat dimodifikasi dalam status ini.

Instans layanan rusak dan tidak dapat dimodifikasi dalam status ini.

Contoh

Uri baseAddress = new Uri("http://localhost:8000/ServiceModelSamples/service");

// Create a ServiceHost for the CalculatorService type and provide the base address.
using (ServiceHost serviceHost = new ServiceHost(typeof(CalculatorService), baseAddress))
{
    serviceHost.Open();
    OperationContext operationContext = OperationContext.Current;
    InstanceContext instanceContext = operationContext.InstanceContext;
    CalculatorService service = (CalculatorService) instanceContext.GetServiceInstance();
}

Berlaku untuk

GetServiceInstance(Message)

Sumber:
InstanceContext.cs
Sumber:
InstanceContext.cs
Sumber:
InstanceContext.cs

Mengembalikan instans layanan untuk konteks instans sebagai respons terhadap pesan masuk.

public:
 System::Object ^ GetServiceInstance(System::ServiceModel::Channels::Message ^ message);
public object GetServiceInstance(System.ServiceModel.Channels.Message message);
member this.GetServiceInstance : System.ServiceModel.Channels.Message -> obj
Public Function GetServiceInstance (message As Message) As Object

Parameter

message
Message

Pesan masuk yang memicu pembuatan objek layanan.

Mengembalikan

Objek yang mewakili instans layanan.

Pengecualian

Instans layanan dalam status dibuat atau dibuka atau tidak diinisialisasi.

Instans layanan dibatalkan.

Instans layanan telah ditutup dan tidak dapat dimodifikasi dalam status ini.

Instans layanan rusak dan tidak dapat dimodifikasi dalam status ini.

Contoh

Uri baseAddress = new Uri("http://localhost:8000/ServiceModelSamples/service");

// Create a ServiceHost for the CalculatorService type and provide the base address.
using (ServiceHost serviceHost = new ServiceHost(typeof(CalculatorService), baseAddress))
{
    serviceHost.Open();
    OperationContext operationContext = OperationContext.Current;
    InstanceContext instanceContext = operationContext.InstanceContext;
    CalculatorService service = (CalculatorService)instanceContext.GetServiceInstance(msg);
}

Keterangan

Ide umumnya adalah Anda hanya membuat instans layanan ketika pesan yang diarahkan ke layanan tiba, dengan memanggil Open; maka jika tidak ada pesan yang tiba, tidak ada InstanceContext yang dibuat dan tidak ada objek layanan yang dibuat, sehingga sumber daya tidak disebarkan sampai benar-benar diperlukan.

Berlaku untuk