• WCF错误及处理记录


    1. 错误信息:{"HTTP 无法注册 URL http://+/Temporary_Listen_Addresses/a4db1461-55c6-4ce5-be25-f41b88877434/,因为另一应用程序正在使用 TCP 端口 80。"}

        产生的环境:使用双工协定的时候。调用客户端的回调方法。

        解决方法:第一种就是将客户端的80端口的服务修改为别的端口。

                      第二种就是在客户端的代码中设置ClientBaseAddress地址,

                         代码如下:

    代码
    DumplexService.IDuplexSampleCallback clent = new ClientCallback();

                    DumplexService.DuplexSampleClient duplexClient 
    = new WebTest.DumplexService.DuplexSampleClient(new System.ServiceModel.InstanceContext(clent));

                    WSDualHttpBinding ws 
    = (WSDualHttpBinding)duplexClient.Endpoint.Binding;
                    ws.ClientBaseAddress 
    = new Uri("http://localhost:8212/");

                    第三种,在配置文件中设置

    代码
    <wsDualHttpBinding >
                    
    <binding name="MyWCFStudy.MyDuplexSet" clientBaseAddress=http://localhost:8212/>
                        
    <security mode="Message"></security>
                    
    </binding>
                
    </wsDualHttpBinding>

     2.错误信息:此操作将死锁,因为在当前邮件完成处理以前无法收到答复。如果要允许无序的邮件处理,则在 ServiceBehaviorAttribute 上指定可重输入的或多个    ConcurrencyMode

       产生的环境:双工协定中。

       解决方法:在服务端实现契约的类指定ServiceBehaviorAttribute的ConcurrencyMode为Multiple。

                     在该类名上增加[ServiceBehavior(ConcurrencyMode = ConcurrencyMode.Multiple)]即可。

  • 相关阅读:
    ASP.NET中26种性能优化方法
    ASP.NET中常用的26个优化性能方法
    ASP.NET页面事件:顺序与回传详解
    ASP.NET控件属性大全
    ADO.NET数据库编程
    ado.net笔记
    98内存管理
    23个常用正则表达式(数值和字符串)
    web中用纯CSS实现筛选菜单
    Unity3D脚本:C#计时类脚本
  • 原文地址:https://www.cnblogs.com/oldhorse/p/1625870.html
Copyright © 2020-2023  润新知