0

我有一个使用 WCF 并针对 .NET 3.5 构建的应用程序。

我无法理解以下调用:

Dim myHost As ServiceHost = New ServiceHost(New ClientService())

其中 ClientService 是:

<ServiceBehavior(InstanceContextMode:=InstanceContextMode.Single)> Public Class ClientService
Implements IClientService

    Public Event SystemNotificationEvent As EventHandler(Of SystemNotificationEventArgs)

    Public Sub SendNotification(ByVal message As Message.SystemNotificationMessage) Implements IClientService.SendNotification
        RaiseEvent SystemNotificationEvent(Me, New SystemNotificationEventArgs(message))
    End Sub

End Class

IClientService 是:

Public Interface IClientService

    <OperationContract()> _
    Sub SendNotification(ByVal message As Message.ServiceMessage)

End Interface

当我查看 .NET 3.5 的 ServiceHost 构造函数选项的文档时,我看到的只有三个选项:

  1. ServiceHost() - 初始化 ServiceHost 类的新实例。
  2. ServiceHost(Object, Uri()) - 使用指定的服务实例及其基地址初始化 ServiceHost 类的新实例。
  3. ServiceHost(Type, Uri()) - 使用指定的服务类型及其基地址初始化 ServiceHost 类的新实例。

我的示例中的代码使用哪个构造函数?

谢谢你。

4

1 回答 1

1

第二个。如果您查看该构造函数的声明,您会看到第二个参数 ( Uri()) 是使用ParamArray修饰符声明的,这意味着您的调用将一个空的 Uri 数组传递给它。

于 2013-04-03T16:04:24.007 回答