实力模式(InstanceContextMode)PerCallPerSession支持Header但是Single不支持自定义header表现是服务器无法获取Header内容 另外如果在ServiceContract中启用会话模式(SessionMode)声明那么SessionModeNoAllowedSessionModeAllowed两种模式下是可以接收到Header的但是SessionModeRequired模式无法接收Header给我的感觉是Session跟messageheader有沖突 建议InstanceContextMode采用PerCall而SessionMode采用NoAllowed如果我们不做显示声明InstanceContextMode默认采用PerSession而SessionMode采用Allowed 在PerCallPerSessionSingle三种模式中PerCall是性能最高的节省资源支持系统的可伸缩性由于服务实例的生命周期只存在于一次调用期间特别对于那些持有昂贵资源的服务实例而言这种方式可以有效地提高系统性能销毁服务实例时WCF不会断开与客户端的连接 |