总结最近两天另人抓狂的WCF跨服务访问问题

本文记录了作者在将WebServer升级为WCF服务过程中遇到的跨服务访问问题,包括需要会话支持的错误、身份验证问题等。通过调整WCF的配置文件和服务行为,成功实现了Session支持。作者分享了关键的代码和配置片段,以帮助遇到类似问题的开发者。
摘要由CSDN通过智能技术生成

先介绍一下开发需求:

应上级要求,需要把以前的WebServer升级为WCF,但是因为单点登录涉及的地方太多,所以,保留单点登录的WebServer服务,也就是我需要用WCF服务去调用以前的WebServer。

这个过程历时至少3天,其中报的错各种各样,我就将一些我还记得的错记录下来,做一个总结,希望对大家有所帮助,尤其是我这种,对WebServer和WCF服务的配置不是很清楚的人

错误:

1、协定需要会话,但是绑定“WSHttpBinding”不支持它或者因配置不正确而无法支持它

2、调用方未由服务器进行身份验证

3、主机XXXXXX和主机XXXXXXXSOAP协议协商失败

4、无法激活服务,因为它需要 ASP.NET 兼容性。没有未此应用程序启用 ASP.NET 兼容性。请在 web.config 中启用 ASP.NET 兼容性或将 AspNetCompatibilityRequirementsAttribute.AspNetCompatibilityRequirementsMode 属性设置为 Required 以外的值。

 

先就记这些吧,一时激动,刚刚好几个错误界面都被关掉了。这里面有个要求是支持Session,我就直接贴源码和配置文件了

服务接口:

[ServiceContract(SessionMode = SessionMode.Required)]
    public interface IMemberService
    {
        #region 会员注册相关
        /// <summary>
        /// 会员注册
        /// </summary>
        /// <param name="MemberType">会员类型</param>
        /// <param name="LoginID">会员注册帐号</param>
        /// <param name="Email">电子邮箱</param>

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值