2 zhongxue dai zhongxue_dai 于 2016.02.12 00:15 提问

想问一下WCF添加服务的问题

找了几篇教程学习WCF,
刚才写了几个例子,有个疑问。

图片说明
我是这样写的,加一个WCF库,然后用代码的方式发布到服务端,再在客户端进行服务引用。

写了几个例子,在添加服务引用的时候,有的是启动服务端后,在客户端引用服务输入URI,有的直接发现本解决方案的服务,不明白两者之间的区别, 看msdn上面之说两种方法都行。。。

刚才我想手动添加地址,先启动了WCF库,复制了地址,然后再客户端添加,为什么服务端没有启动也能找到服务呢? >_ < ?

2个回答

caozhy
caozhy   Ds   Rxr 2016.02.12 05:23
已采纳

wcf需要被寄宿(host)才能被客户端调用。寄宿的方法有很多,比如iis寄宿,或者程序自寄宿。“直接发现本解决方案的服务”这个只是调试的时候加载一个iis express或者web development server来运行你的程序。在实际生产环境中没有这么做的。

zhongxue_dai
zhongxue_dai 多谢! 网上学习了一下WCF服务寄宿的知识,把host的东西弄明白了。 能不能给说一下生产环境下是怎么做的呢? 是不是采用单独应用程序做服务端,host之后发布安装文件就可以用了呢?
2 年多之前 回复
caozhy
caozhy   Ds   Rxr 2016.02.12 09:29

生产环境用的最多的是iis寄宿,http binding,因为大部分机房托管的服务器以及云服务器都支持http协议。

zhongxue_dai
zhongxue_dai thanks!
2 年多之前 回复
Csdn user default icon
上传中...
上传图片
插入图片
准确详细的回答,更有利于被提问者采纳,从而获得C币。复制、灌水、广告等回答会被删除,是时候展现真正的技术了!
其他相关推荐
C# 桌面应用程序WCF通讯应用实例
窗口程序应用WCF通讯 服务与WEB就用WCF通讯。服务与桌面通讯,客户端先添加服务引用一下再用
疑惑:【WCF】本地服务和发布服务的引用问题
【项目背景】             在高效云平台项目中,我们各个模块采用的创建分布式服务(即wcf),这样的好处之一:我们不用同在一个解决方案中,方便了彼此之间接口的调用,只要引用服务,该服务中的接口,接口中的方法都可以使用。 【问题描述】            我权限注册模块调用用户模块的接口方法,正常情况下,我调用用户模块发布好的服务即可。可如果用户模块B层中我调用的方法更改后,我再调
win下手工卸载ORACLE及服务项删除
手动卸载oracle步骤: 一、停止oracle所有的服务。 二、regedit打开注册表: 1、HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\   删除该路径下的所有以oracle开始的服务名称,这个键是标识Oracle在windows下注册的各种服务! 2、HKEY_LOCAL_MACHINE\SOFTWARE\ORAC
WCF服务创建,并调用(调用过程,不需添加服务引用)
WCF服务创建,并调用(调用过程,不需添加服务引用)。 打破传统的添加服务引用的方式,直接通过地址调用。请求和返回结果以JSON的形式来添加
WCF——两个解决方案引用WCF服务
两个解决方案的相互调用
WCF学习(2) ServiceHost寄宿多个服务
Service寄宿多个服务
VS2010发布的wcf服务,浏览器访问没有问题,但是vs添加服务引用出错
最近新买了台电脑,安装顺序为.net4.0 ~~~IIS~~~数据库~~~VS2010 ,在VS2010发布WCF 服务时,发现,无法引用服务,最终发现是自己对于缓存的目录的权限不够,希望对跟我遇到同样问题的朋友有所帮助。【完】
WCF 在VS中,添加服务引用,地址输入http://ip/Service.svc,点击前往,提示错误
WCF 在VS中,添加服务引用,地址输入http://ip/Service.svc,点击前往,提示错误
WCF 服务第一次调用慢的问题
写了一个WCF Serivces供外部程序通过.NET Businesss Connector调用AX的代码,第一次调用的时候总是很慢,有时候甚至超过1分钟,访问地址改成http://localhost的时候第一次调用又很快,改成IP地址后第一次就非常慢。 之所以这样是因为通过添加服务引用的方式生成的配置文件里,默认把useDefaultWebProxy设置为true了,这种情况下在连接WC
一个在vs2017中开发wcf的步骤
一、新建WCF服务应用程序 删除自动创建的WCF服务,然后添加新建WCF服务的接口和实现 接口如下: using System; using System.Collections.Generic; using System.IO; using System.Linq; using System.Runtime.Serialization; using System.ServiceM