题
我是替换现有网络服务与WCF服务并作为第一步的迁移我要揭露端点与BasicHttpBinding直到客户升级后的一年。
该计划主办的新的WCF服务带的windows服务(服务将只能从内部网,所以没有真正的需要,HTTP),但暴露出两个基本的HTTP和网。TCP端点,因此,移民可能发生的阶段。
然而,我有一些麻烦的呼叫者的名在我WCF服务,寻找在目前的网服务代码就是采用的上下文。请求。UserHostName,获得主机名称。我已经成功地获得叫的用户名和IP地址但是,所有的相关权限的/服务的安全环境中使用的主机名称而不是IP,所以是否有任何方法对我来说,获得HostName在我的服务?
P.S.我已经设置的安全模式TransportCredentialOnly与clientCredientialType设置Windows
解决方案
因为你不是在托管IIS,你不能用 ASP.NET 兼容性模式 可以获得访问 HttpContext
这通常会的存在ASP.NET 过程。
相反,可以使用 GetHostEntry
方法 在 Dns
类 在 System.Net
namespace 得到的 IPHostEntry
实例 其中将包含的别名(DNS名)IP地址你是获得。
不隶属于 StackOverflow