InstanceContext.GetServiceInstance Yöntem
Tanım
Önemli
Bazı bilgiler ürünün ön sürümüyle ilgilidir ve sürüm öncesinde önemli değişiklikler yapılmış olabilir. Burada verilen bilgilerle ilgili olarak Microsoft açık veya zımni hiçbir garanti vermez.
Hizmetin örneğini döndürür.
Aşırı Yüklemeler
GetServiceInstance() |
Örnek bağlamı için hizmetin örneğini döndürür. |
GetServiceInstance(Message) |
Gelen iletiye yanıt olarak örnek bağlamı için hizmetin örneğini döndürür. |
GetServiceInstance()
Örnek bağlamı için hizmetin örneğini döndürür.
public:
System::Object ^ GetServiceInstance();
public object GetServiceInstance ();
member this.GetServiceInstance : unit -> obj
Public Function GetServiceInstance () As Object
Döndürülenler
Hizmet örneğini temsil eden nesne.
Özel durumlar
Hizmet örneği oluşturuldu veya açılıyor veya başlatılmadı.
Hizmet örneği durduruldu.
Hizmet örneği zaten kapatıldı ve bu durumlarda değiştirilemez.
Hizmet örneği hatalı ve bu durumlarda değiştirilemez.
Örnekler
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();
}
Şunlara uygulanır
GetServiceInstance(Message)
Gelen iletiye yanıt olarak örnek bağlamı için hizmetin örneğini döndürür.
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
Parametreler
- message
- Message
Hizmet nesnesinin oluşturulmasını tetikleyen gelen ileti.
Döndürülenler
Hizmet örneğini temsil eden nesne.
Özel durumlar
Hizmet örneği oluşturuldu veya açılıyor veya başlatılmadı.
Hizmet örneği durduruldu.
Hizmet örneği zaten kapatıldı ve bu durumlarda değiştirilemez.
Hizmet örneği hatalı ve bu durumlarda değiştirilemez.
Örnekler
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);
}
Açıklamalar
Genel fikir, hizmetin yalnızca yönlendirilen bir ileti geldiğinde çağırarak Openbir örneğini oluşturmanızdır; bu durumda hiçbir ileti gelmezse hiçbir InstanceContext ileti oluşturulmaz ve hizmet nesnesi oluşturulmaz ve bu nedenle kaynaklar gerçekten gerekli olana kadar dağıtılmaz.