首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

在WCF中读取调用者的IP地址(OperationContext为null)?

在WCF中读取调用者的IP地址(OperationContext为null)的方法如下:

  1. 使用ServiceSecurityContext类获取调用者的IP地址。
代码语言:csharp
复制
string clientIP = ServiceSecurityContext.Current.PrimaryIdentity.Name;
  1. 使用OperationContext.Current获取调用者的IP地址。
代码语言:csharp
复制
string clientIP = OperationContext.Current.IncomingMessageProperties[RemoteEndpointMessageProperty.Name].ToString();
  1. 使用HttpContext.Current获取调用者的IP地址。
代码语言:csharp
复制
string clientIP = HttpContext.Current.Request.UserHostAddress;
  1. 使用System.Net.Dns类获取调用者的IP地址。
代码语言:csharp
复制
string clientIP = System.Net.Dns.GetHostAddresses(OperationContext.Current.IncomingMessageHeaders.To.Host)[0].ToString();

以上方法都可以获取调用者的IP地址,但是在某些情况下,可能需要根据具体的环境和配置进行调整。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

  • WCF技术剖析之二十三:服务实例(Service Instance)生命周期如何控制[下篇]

    在[第2篇]中,我们深入剖析了单调(PerCall)模式下WCF对服务实例生命周期的控制,现在我们来讨轮另一种极端的服务实例上下文模式:单例(Single)模式。在单例模式下,WCF通过创建一个唯一的服务实例来处理所有的客户端服务调用请求。这是一个极端的服务实例激活方式,由于服务实例的唯一性,所有客户端每次调用的状态能够被保存下来,但是当前的状态是所有客户端作用于服务实例的结果,而不能反映出具体某个客户端多次调用后的状态。WCF是一个典型的多线程的通信框架,对并发的服务调用请求是最基本的能力和要求,但是服务

    010

    利用WCF改进文件流传输的三种方式

    WCF在跨域传输使用了两种模型的方法调用:一种是同步模型,这种模型显然对那些需要大量操作时间的方法调用(如从数据库中获取大量数据时)是一种痛苦的选择。另一种是异步模型的方法调用,这种模型是一种非阻塞方法,其方法调用期间并不等到方法调用结束获得结果才返回,而是方法调用一经开始就马上返回,程序可以继续向前执行,被调用方法和主程序同时执行,在调用方法结束才返回结果。显然这种模型给了我们很好的编程和使用体验。 基于WCF在普通的编码是以文本编码方式在信道之间传输信息的,这种编码会把所有的二进制信息以字节数组的形式存

    06

    我的WCF之旅(8):WCF中的Session和Instancing Management

    我们知道,WCF是MS基于SOA建立的一套在分布式环境中各个相对独立的Application进行Communication的构架。他实现了最新的基于WS-*规范。按照SOA的原则,相对独自的业务逻辑以service的形式封装,调用者通过Messaging的方式调用Service。对于承载着某个业务功能的实现的Service应该具有Context无关性、甚至是Solution无关性,也就是说个构成Service的operation不应该绑定到具体的调用上下文,对于任何调用,具有什么样的输入,就会有与之对应的输出。因为SOA的一个最大的目标就是尽可能地实现重用,只有具有Context无关性/Solution无关性,Service才能实现最大限度的重用。此外Service的Context无关性/Solution无关性还促进了另一个重要的面向服务的特征的实现:可组合性,把若干相关细粒度的Service封装成一个整体业务流程的Service。

    02
    领券