WCF服务寄宿到Winform中,运行在外网的服务器上,在内网的浏览器上可以访问到数据,如下:
但是在添加服务引用时,报错,如图:
求各位大神指点!!!!
这个应该和外网没有什么关系,而是你的配置/部署方式的问题,你现在是添加服务引用,换成添加web引用的方式看下。
如果你host在winform上的话,需要启动winform才有服务,才能添加服务引用……先把你的form publish一个吧,然后启动,然后添加,然后就可以了。
using (ServiceHost host = new ServiceHost(typeof(FileService),new Uri("http://192.168.0.118:9004/MicrVideoService/")))
{
host.Open();
}
执行后 host 被立即销毁。
不要加 using ,把host 定义成全局的。
能访问wsdl说明就是能引用的,用web引用肯定是可以的,或者用代理也行的,配置客户端代理更简单。
对外网访问,需要设置路由,确定可访问的ip和端口