很多时候我们将WCF服务寄宿在windows窗口应用程序或控制台应用程序中,那么实现契约的类怎样才能确定寄宿的应用程序所在计算机的ip地址呢?其实方法和获得客户端IP地址的方法差不多,仍然是采用了OperationContext类。主要代码如下:
Private Function getHostIP() As String Try Dim context As OperationContext = OperationContext.Current Return context.Host.Description.Endpoints(0).Address.Uri.Host Catch Return "" End Try End Function其中发生错误的情况下,说明getHostIP方法未在宿主环境下执行