ServiceHost Класс

Определение

Предоставляет основное приложение для служб.

public ref class ServiceHost : System::ServiceModel::ServiceHostBase
public class ServiceHost : System.ServiceModel.ServiceHostBase
type ServiceHost = class
    inherit ServiceHostBase
Public Class ServiceHost
Inherits ServiceHostBase
Наследование
Производный

Примеры

// Host the service within this EXE console application.
public static void Main()
{
  using (ServiceHost serviceHost = new ServiceHost(typeof(CalculatorService)))
  {
    try
    {
      // Open the ServiceHost to start listening for messages.
      serviceHost.Open();

        // The service can now be accessed.
      Console.WriteLine("The service is ready.");
      Console.WriteLine("Press <ENTER> to terminate service.");
      Console.ReadLine();

      // Close the ServiceHost.
      serviceHost.Close();
    }
    catch (TimeoutException timeProblem)
    {
      Console.WriteLine(timeProblem.Message);
      Console.ReadLine();
    }
    catch (CommunicationException commProblem)
    {
      Console.WriteLine(commProblem.Message);
      Console.ReadLine();
    }
  }
}
' Host the service within this EXE console application.
Public Shared Sub Main()
    ' Create a ServiceHost for the CalculatorService type and use the base address from config.
    Using svcHost As New ServiceHost(GetType(CalculatorService))
        Try
            ' Open the ServiceHost to start listening for messages.
            svcHost.Open()

            ' The service can now be accessed.
            Console.WriteLine("The service is ready.")
            Console.WriteLine("Press <ENTER> to terminate service.")
            Console.WriteLine()
            Console.ReadLine()

            'Close the ServiceHost.
            svcHost.Close()

        Catch timeout As TimeoutException
            Console.WriteLine(timeout.Message)
            Console.ReadLine()
        Catch commException As CommunicationException
            Console.WriteLine(commException.Message)
            Console.ReadLine()
        End Try
    End Using

End Sub

Комментарии

Реализует узел, используемый моделью программирования модели Windows Communication Foundation (WCF).

ServiceHost Используйте класс для настройки и предоставления службы для использования клиентскими приложениями, если вы не используете службы IIS (IIS) или Windows Службы активации (WAS) для предоставления службы. Как службы IIS, так и службы WAS взаимодействуют с объектом ServiceHost от вашего имени.

Чтобы предоставить службу для использования вызывающими абонентами, WCF требует полного описания службы (представленного классом ServiceDescription ). Класс ServiceHost создает ServiceDescription данные о типе службы и конфигурации, а затем использует это описание для создания ChannelDispatcher объектов для каждой конечной точки в описании.

ServiceHost Используйте объект для загрузки службы, настройки конечных точек, применения параметров безопасности и запуска прослушивателей для обработки входящих запросов.

Конструкторы

ServiceHost()

Инициализирует новый экземпляр класса ServiceHost.

ServiceHost(Object, Uri[])

Инициализирует новый экземпляр класса ServiceHost с указанными экземпляром службы и базовыми адресами.

ServiceHost(Type, Uri[])

Инициализирует новый экземпляр класса ServiceHost с указанными типом службы и базовыми адресами.

Свойства

Authentication

Возвращает поведение проверки подлинности службы.

(Унаследовано от ServiceHostBase)
Authorization

Возвращает поведение авторизации для размещенной службы.

(Унаследовано от ServiceHostBase)
BaseAddresses

Возвращает базовые адреса, используемые размещенной службой.

(Унаследовано от ServiceHostBase)
ChannelDispatchers

Возвращает коллекцию диспетчеров каналов, используемых узлом службы.

(Унаследовано от ServiceHostBase)
CloseTimeout

Возвращает или задает интервал времени, выделенный для операции закрытия узла службы.

(Унаследовано от ServiceHostBase)
Credentials

Возвращает учетные данные для размещенной службы.

(Унаследовано от ServiceHostBase)
DefaultCloseTimeout

Возвращает интервал времени по умолчанию, выделенный для операции закрытия узла службы.

(Унаследовано от ServiceHostBase)
DefaultOpenTimeout

Возвращает интервал времени по умолчанию, выделенный для операции открытия узла службы.

(Унаследовано от ServiceHostBase)
Description

Возвращает описание размещенной службы.

(Унаследовано от ServiceHostBase)
Extensions

Возвращает расширения для текущего заданного узла службы.

(Унаследовано от ServiceHostBase)
ImplementedContracts

Извлекает контракты, реализованные размещенной службой.

(Унаследовано от ServiceHostBase)
IsDisposed

Возвращает значение, указывающее, удален ли объект связи.

(Унаследовано от CommunicationObject)
ManualFlowControlLimit

Возвращает или задает предел управления потоками для сообщений, полученных размещенной службой.

(Унаследовано от ServiceHostBase)
OpenTimeout

Возвращает или задает интервал времени, выделенный для операции открытия узла службы.

(Унаследовано от ServiceHostBase)
SingletonInstance

Возвращает одноэлементный экземпляр размещенной службы.

State

Возвращает значение, которое указывает на текущее состояние объекта связи.

(Унаследовано от CommunicationObject)
ThisLock

Возвращает взаимно исключающую блокировку, которая защищает экземпляр класса в процессе перехода между состояниями.

(Унаследовано от CommunicationObject)

Методы

Abort()

Вызывает мгновенный переход объекта связи из текущего состояния в состояние закрытия.

(Унаследовано от CommunicationObject)
AddBaseAddress(Uri)

Добавляет базовый адрес в узел службы.

(Унаследовано от ServiceHostBase)
AddDefaultEndpoints()

Добавляет конечные точки службы для всех базовых адресов в каждом контракте, найденных в узле службы, имеющих привязку по умолчанию.

(Унаследовано от ServiceHostBase)
AddServiceEndpoint(ServiceEndpoint)

Добавляет заданную конечную точку службы в размещенную службу.

(Унаследовано от ServiceHostBase)
AddServiceEndpoint(String, Binding, String)

Добавляет конечную точку службы в размещенную службу с указанными контрактом, привязкой и адресом конечной точки.

(Унаследовано от ServiceHostBase)
AddServiceEndpoint(String, Binding, String, Uri)

Добавляет конечную точку службы в размещенную службу с указанными контрактом, привязкой, адресом конечной точки и универсальным кодом ресурса (URI), содержащим адрес, по которому служба выполняет прослушивание.

(Унаследовано от ServiceHostBase)
AddServiceEndpoint(String, Binding, Uri)

Добавляет конечную точку службы в размещенную службу с указанными контрактом, привязкой и универсальным кодом ресурса (URI), содержащим адрес конечной точки.

(Унаследовано от ServiceHostBase)
AddServiceEndpoint(String, Binding, Uri, Uri)

Добавляет конечную точку службы в размещенную службу с указанными контрактом, привязкой и универсальными кодами ресурса (URI), содержащими адреса конечных точек и прослушивания.

(Унаследовано от ServiceHostBase)
AddServiceEndpoint(Type, Binding, String)

Добавляет конечную точку службы в размещенную службу с указанными контрактом, привязкой и адресом конечной точки.

AddServiceEndpoint(Type, Binding, String, Uri)

Добавляет конечную точку службы в размещенную службу с указанными контрактом, привязкой, адресом конечной точки и универсальным кодом ресурса, по которому служба выполняет прослушивание.

AddServiceEndpoint(Type, Binding, Uri)

Добавляет конечную точку службы в размещенную службу с указанными контрактом, привязкой и универсальным кодом ресурса, содержащим адрес конечной точки.

AddServiceEndpoint(Type, Binding, Uri, Uri)

Добавляет конечную точку службы в размещенную службу с указанными контрактом, привязкой, универсальным кодом ресурса, содержащим адрес конечной точки, и универсальным кодом ресурса, по которому служба выполняет прослушивание.

ApplyConfiguration()

Загружает описание службы из файла конфигурации и применяет его к создаваемой среде выполнения.

ApplyConfiguration()

Загружает данные с описанием службы из файла конфигурации и применяет их к создаваемой среде выполнения.

(Унаследовано от ServiceHostBase)
BeginClose(AsyncCallback, Object)

Начинает асинхронную операцию закрытия объекта связи.

(Унаследовано от CommunicationObject)
BeginClose(TimeSpan, AsyncCallback, Object)

Начинает асинхронную операцию закрытия объекта связи с заданным временем ожидания.

(Унаследовано от CommunicationObject)
BeginOpen(AsyncCallback, Object)

Начинает асинхронную операцию открытия объекта связи.

(Унаследовано от CommunicationObject)
BeginOpen(TimeSpan, AsyncCallback, Object)

Начинает асинхронную операцию открытия объекта связи в течение заданного интервала времени.

(Унаследовано от CommunicationObject)
Close()

Вызывает переход объекта связи из текущего состояния в состояние Closed.

(Унаследовано от CommunicationObject)
Close(TimeSpan)

Вызывает переход объекта связи из его текущего состояния в состояние Closed в течение заданного интервала времени.

(Унаследовано от CommunicationObject)
CreateDescription(IDictionary<String,ContractDescription>)

Создает описание размещенной службы.

EndClose(IAsyncResult)

Завершает асинхронную операцию закрытия объекта связи.

(Унаследовано от CommunicationObject)
EndOpen(IAsyncResult)

Завершает асинхронную операцию открытия объекта связи.

(Унаследовано от CommunicationObject)
Equals(Object)

Определяет, равен ли указанный объект текущему объекту.

(Унаследовано от Object)
Fault()

Вызывает переход объекта связи из текущего состояния в состояние Faulted.

(Унаследовано от CommunicationObject)
GetCommunicationObjectType()

Возвращает тип объекта связи.

(Унаследовано от CommunicationObject)
GetHashCode()

Служит хэш-функцией по умолчанию.

(Унаследовано от Object)
GetType()

Возвращает объект Type для текущего экземпляра.

(Унаследовано от Object)
IncrementManualFlowControlLimit(Int32)

Увеличивает значение предела скорости потока сообщений в размещенную службу на заданную величину.

(Унаследовано от ServiceHostBase)
InitializeDescription(Object, UriSchemeKeyedCollection)

Инициализирует описание службы, размещенной на основе ее экземпляра и указанных базовых адресов.

InitializeDescription(Type, UriSchemeKeyedCollection)

Инициализирует описание службы, размещенной на основе ее типа и указанных базовых адресов.

InitializeDescription(UriSchemeKeyedCollection)

Создает и инициализирует узел службы с описаниями контрактов и служб.

(Унаследовано от ServiceHostBase)
InitializeRuntime()

Инициализирует среду выполнения для узла службы.

(Унаследовано от ServiceHostBase)
LoadConfigurationSection(ServiceElement)

Загружает элемент службы из файла конфигурации размещенной службы.

(Унаследовано от ServiceHostBase)
MemberwiseClone()

Создает неполную копию текущего объекта Object.

(Унаследовано от Object)
OnAbort()

Прерывает работу службы.

(Унаследовано от ServiceHostBase)
OnBeginClose(TimeSpan, AsyncCallback, Object)

Начинает асинхронную операцию, вызванную закрытием узла службы.

(Унаследовано от ServiceHostBase)
OnBeginOpen(TimeSpan, AsyncCallback, Object)

Начинает асинхронную операцию, вызванную открытием узла службы.

(Унаследовано от ServiceHostBase)
OnClose(TimeSpan)

Закрывает размещенную службу, включая диспетчеры каналов и связанные контексты и прослушиватели экземпляра.

(Унаследовано от ServiceHostBase)
OnClosed()

Удаляет службы с возможностью удаления, размещенные во время закрытия узла службы.

OnClosing()

Вызывается в процессе перехода объекта связи в состояние закрытия.

(Унаследовано от CommunicationObject)
OnEndClose(IAsyncResult)

Завершает асинхронную операцию, вызванную закрытием узла службы.

(Унаследовано от ServiceHostBase)
OnEndOpen(IAsyncResult)

Завершает асинхронную операцию, вызванную открытием узла службы.

(Унаследовано от ServiceHostBase)
OnFaulted()

Вставляет операцию обработки объекта связи после перехода объекта в состояние Faulted в связи с вызовом синхронной операции ошибки.

(Унаследовано от CommunicationObject)
OnOpen(TimeSpan)

Открывает диспетчеры каналов.

(Унаследовано от ServiceHostBase)
OnOpened()

Возвращает учетные данные службы, проверку подлинности службы и поведение авторизации для размещенной службы.

(Унаследовано от ServiceHostBase)
OnOpening()

Вызывается в процессе перехода объекта связи в состояние открытия.

(Унаследовано от CommunicationObject)
Open()

Вызывает переход объекта связи из состояния Created в состояние Opened.

(Унаследовано от CommunicationObject)
Open(TimeSpan)

Вызывает переход объекта связи из состояния Created в состояние Opened в течение заданного интервала времени.

(Унаследовано от CommunicationObject)
ReleasePerformanceCounters()

Освобождает счетчики производительности диспетчера каналов и служб для размещенной службы.

(Унаследовано от ServiceHostBase)
SetEndpointAddress(ServiceEndpoint, String)

Задает в качестве адреса указанной конечной точки указанный адрес.

(Унаследовано от ServiceHostBase)
ThrowIfDisposed()

Вызывает исключение, если объект связи удален.

(Унаследовано от CommunicationObject)
ThrowIfDisposedOrImmutable()

Создает исключение, если для свойства объекта связи State не установлено значение Created.

(Унаследовано от CommunicationObject)
ThrowIfDisposedOrNotOpen()

Создает исключение, если объект связи не находится в состоянии Opened.

(Унаследовано от CommunicationObject)
ToString()

Возвращает строку, представляющую текущий объект.

(Унаследовано от Object)

События

Closed

Происходит при переходе объекта связи в состояние Closed.

(Унаследовано от CommunicationObject)
Closing

Происходит при переходе объекта связи в состояние закрытия.

(Унаследовано от CommunicationObject)
Faulted

Происходит при переходе объекта связи в состояние Faulted.

(Унаследовано от CommunicationObject)
Opened

Происходит при переходе объекта связи в состояние Opened.

(Унаследовано от CommunicationObject)
Opening

Происходит при переходе объекта связи в состояние открытия.

(Унаследовано от CommunicationObject)
UnknownMessageReceived

Происходит при получении неизвестного сообщения.

(Унаследовано от ServiceHostBase)

Явные реализации интерфейса

IDisposable.Dispose()

Закрывает узел службы.

(Унаследовано от ServiceHostBase)

Применяется к