• WCF调用添加服务引用时找不到服务的解决办法


    今天在工作中遇到这样一个问题,让我头疼了半天,最后头疼不能让人屈服,问题还是被我征服了.先展示一下错误,看看你们有木有遇到过:

    造成这种结果的原因有这么几个:

      1. 服务地址不正确;

      2. 服务没有运行;

      3.netTcpBinding和endpoint节点未设置,这是在存在app.config的情况下才有可能的;

    一一排除吧,前两个都没有问题,然后就开始baidu,google"元数据包含无法解析的引用","读取XML数据时,超出最大名称表字符计数配额(16384)",这样查没有结果啊,网上的千篇一律,说改什么配置文件,问题是我现在都没有加上引用呢,何来的配置文件.后来才想到下边的那句话"MaxNameTableCharCount属性,可增加配额",那就开始找这句话.这句话还是很有用,找了一会终于有答案了.

      这篇文章  里稍微有了思路,大胆改掉了VS 2010 的配置文件.

      在配置文件的最下方加入了几行代码

      

      <system.serviceModel>
        <client>
          <endpoint name="net.tcp" binding="netTcpBinding" bindingConfiguration="bc" contract="IMetadataExchange" />
        </client>
        <bindings>
          <netTcpBinding>
            <binding name="bc" maxReceivedMessageSize="2147483647">
              <readerQuotas maxNameTableCharCount="2147483647" />
              <security mode="None"/>
            </binding>
          </netTcpBinding>
        </bindings>
      </system.serviceModel>

      最耀眼的那一行便是核心,这段代码要框在<configuration></configuration> 内部,这样就OK 了,重启一下VS ,继续从前的操作,添加服务引用成功.

      之后就可以Happy的进行下边的服务调用喽!

      方法比较局限,或许有更好的办法,希望园友们不吝赐教.

  • 相关阅读:
    观察者模式
    hdu 4712 Hamming Distance bfs
    leetcode Sum Root to Leaf Numbers(所有路径之和)
    Oracle实用-01:绑定变量
    jQuery实现AJAX定时刷新局部页面实例
    给Ajax一个漂亮的嫁衣——Ajax系列之五(下)之序列化和反序列化
    jquery的ajax同步和异步
    报表技术
    告别.NET生成报表统计图的烦恼
    浅谈ASP.NET报表控件
  • 原文地址:https://www.cnblogs.com/distance/p/2590145.html
Copyright © 2020-2023  润新知