本帖最后由 chirea 于 2012-06-09 20:31:02 编辑

解决方案 »

  1.   

    没有URL地址,怎么添加服务引用?就算有wsdl也需要有服务地址... 很莫名奇妙的问题
      

  2.   

    将服务端部署到本地IIS或内部服务器IIS,客户端再引用这个地址生成本地代理。
    或者你开两个vs,服务端先跑起来,这样就有了本地的一个服务地址,然后客户端再根据这个地址添加引用。总之 办法多得很。
      

  3.   

    启动服务,直接把服务器的URL添加服务引用进来..
      

  4.   

    客户端代理对象在new 的时候,有不同的重载方法。其中一种方法,需要提供binding和url参数,你在这个参数中应该写入服务器发布的地址。例如你将本地开发的wcf服务发布到国外的服务器上,而客户端程序则设计一个画面,由用户去设置服务器的地址(域名和端口号),这样你的客户端程序就可以动态生成url,动态访问所发布的wcf服务。
      

  5.   

    我们打开有人写的客户端代理new实例化方法的代码,如果它只是使用了无参数的方法,那么我们就知道怎么回事了。它只知道让客户端程序去访问开发时的那个服务器wcf部署地址。这根本就不会用wcf嘛。难道它以为服务器的wcf部署地址就不改变了?
      

  6.   

    不得不说,msdn上关于wcf的文档写的很经院化,粗看起来好像很棒,细看起来其实很烂。
    在实际的开发中我建议你使用轻量级的方法。例如假设你的服务器端是asp.net写的,那么使用ashx提供服务就可以了。客户端可以使用http post方式提交一个json查询,而服务器端下载一个json方式表达的查询结果。在传统的web service开发中,我们以为以前的xml方式表达的rpc功能调用schema格式的解析程序异常复杂(实际上也确实如此),而我们又却是希望比较“规范”地在客户端开发时一下子产生非常规范的客户端代理程序。
    然而现在已经更多地倾向于轻量级、甚至无模式的通讯表示形式了。我们使用json即可。
      

  7.   

    谢谢,各位,现在引用的问题解决了。
    MSDN关于WCF的资料很少...想去买本书来好好学习一下,有什么好推荐的吗?合适初学WCF的.
      

  8.   

    可以先看看这位的博客,他也出了本书 WCF 全面解析
    蒋金楠