ServiceHost Конструкторы
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Инициализирует новый экземпляр класса 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[]) Используйте конструктор только в том случае, если требуется, чтобы узел службы использовал определенный экземпляр службы.