日期:2014-05-17  浏览次数:21130 次

WCF,这个地址是怎么来的?

[ServiceContract(Name="CalculatorService", Namespace="http://www.artech.com/")]
        public interface ICalculator
        {
          ...
        }

这里的Namespace="http://www.artech.com/"是自己随便写的吗?



using (ServiceHost host = new ServiceHost(typeof(CalService), new Uri("http://127.0.0.1:8888")))
  {
    ...
  }

这里的"http://127.0.0.1:8888"是怎么来的呢?

------解决方案--------------------
Namespace随便填写,就和项目定义的命名空间一个道理,没有特殊含义。
Uri为监听地址,一般用localhost+端口号,端口号为本机未使用的任意端口。
------解决方案--------------------
引用:
Namespace随便填写,就和项目定义的命名空间一个道理,没有特殊含义。
Uri为监听地址,一般用localhost+端口号,端口号为本机未使用的任意端口。

+1
客户端使用时,要将请求发送到监听地址。
这个Uri,在服务端和客户端是要保持一致的。相当于告诉你我家电话是多少,你有事情,拨打指定号码就ok了。
------解决方案--------------------
127.0.0.1表示本机,8888表示端口,意思是你想调用WCF服务,就必须访问本机的8888端口,而你的WCF也要通过这个端口发送出去才能被别的程序调用
------解决方案--------------------
你看的是蒋金兰的代码啊。
这个人写的WCF的书很不错。
------解决方案--------------------
端口以宿主程序为主,例如你如果发布在IIS上那么端口也就是IIS中你定义的端口
------解决方案--------------------
127.0.0.1表示本机访问,8888表示端口   你可以吧IP改成自己电脑的ip  端口随便改一个 然后别人要访问的话就用这个ip加端口号加服务名