ServiceHost 建構函式
定義
重要
部分資訊涉及發行前產品,在發行之前可能會有大幅修改。 Microsoft 對此處提供的資訊,不做任何明確或隱含的瑕疵擔保。
初始化 ServiceHost 類別的新執行個體。
多載
ServiceHost() |
初始化 ServiceHost 類別的新執行個體。 |
ServiceHost(Object, Uri[]) |
使用服務執行個體及其指定基底位址,初始化 ServiceHost 類別的新執行個體。 |
ServiceHost(Type, Uri[]) |
使用服務的類型及其指定基底位址,初始化 ServiceHost 類別的新執行個體。 |
ServiceHost()
初始化 ServiceHost 類別的新執行個體。
protected:
ServiceHost();
protected ServiceHost ();
Protected Sub New ()
備註
有兩個建構函式可用來建立 類別的 ServiceHost 實例。 ServiceHost(Type, Uri[])使用建構函式,此建構函式會採用服務類型作為輸入參數,大部分時間。 主機可以依需要使用這個建構函式來建立新服務。 ServiceHost(Object, Uri[])只有當您想要服務主機使用服務的特定單一實例時,才使用 建構函式。
適用於
ServiceHost(Object, Uri[])
使用服務執行個體及其指定基底位址,初始化 ServiceHost 類別的新執行個體。
public:
ServiceHost(System::Object ^ singletonInstance, ... cli::array <Uri ^> ^ baseAddresses);
public ServiceHost (object singletonInstance, params Uri[] baseAddresses);
new System.ServiceModel.ServiceHost : obj * Uri[] -> System.ServiceModel.ServiceHost
Public Sub New (singletonInstance As Object, ParamArray baseAddresses As Uri())
參數
- singletonInstance
- Object
裝載之服務的執行個體。
例外狀況
singletonInstance
為 null
。
範例
CalculatorService service = new CalculatorService();
ServiceHost serviceHost = new ServiceHost(service, baseAddress);
Dim service As CalculatorService = New CalculatorService()
Dim serviceHost As ServiceHost = New ServiceHost(service, baseAddress)
備註
當您想要提供特定物件實例供單一服務使用時,請使用此建構函式作為實作自訂 System.ServiceModel.Dispatcher.IInstanceContextInitializer 的替代方法。 當服務實作類型很難建構時 (例如,無法實作沒有參數的預設公用建構函式時),您可能會想要使用這個多載。
請注意,當物件提供給這個多載時,與 Windows Communication Foundation (WCF 相關的某些功能) 實例行為的運作方式不同。 例如,使用這個建構函式多載提供已知物件實例時,呼叫 InstanceContext.ReleaseServiceInstance 沒有任何作用。 同樣的,也會忽略任何其他執行個體的釋放機制。 ServiceHost 的行為就像是所有作業都已將 OperationBehaviorAttribute.ReleaseInstanceMode 屬性設定為 ReleaseInstanceMode.None 。
適用於
ServiceHost(Type, Uri[])
使用服務的類型及其指定基底位址,初始化 ServiceHost 類別的新執行個體。
public:
ServiceHost(Type ^ serviceType, ... cli::array <Uri ^> ^ baseAddresses);
public ServiceHost (Type serviceType, params Uri[] baseAddresses);
new System.ServiceModel.ServiceHost : Type * Uri[] -> System.ServiceModel.ServiceHost
Public Sub New (serviceType As Type, ParamArray baseAddresses As Uri())
參數
- serviceType
- Type
裝載之服務的類型。
例外狀況
serviceType
為 null
。
範例
此範例說明如何使用 ServiceHost 類別來裝載 Windows Communication Foundation 服務:
ServiceHost serviceHost = new ServiceHost(typeof(CalculatorService), baseAddress);
Dim svcHost As ServiceHost = New ServiceHost(GetType(CalculatorService), baseAddress)
備註
當您知道服務類型時,可以使用這個建構函式,在需要時建立新的執行個體 (即便您只是需要一個單一執行個體)。 ServiceHost(Object, Uri[])只有當您想要服務主機使用服務的特定單一實例時,才使用 建構函式。