WCF 关于自定义MessageHeader支持
实力模式(instancecontextmode)percall、persession支持header,但是single不支持自定义header,表现是服务器无法获取header内容
(来源 www.iocblog.net)
另外如果在servicecontract中启用会话模式(sessionmode)声明,那么sessionmode.noallowed、sessionmode.allowed两种模式下是可以接收到header的,但是sessionmode.required模式无法接收header,给我的感觉是session跟messageheader有冲突。
建议:instancecontextmode采用percall,而sessionmode采用noallowed;如果我们不做显示声明instancecontextmode默认采用persession,而sessionmode采用allowed
在percall、persession、single三种模式中,percall是性能最高的,节省资源,支持系统的可伸缩性。由于服务实例的生命周期只存在于一次调用期间,特别对于那些持有昂贵资源的服务实例而言,这种方式可以有效地提高系统性能。销毁服务实例时,wcf不会断开与客户端的连接。
Tag: wcf