WCF应用程序& WCF服务库的理解

时间:2012-03-23 15:00:53

标签: c# .net wcf web-services rest

观看一些他们谈论端点的视频,我不知道在wcf RESTful服务方面,基地址和端点的差异是什么?

为什么在使用休息时您是否在合同区域中声明了URL?我的意思是wcf和restful wcf之间的区别是什么?猜测是WCF作为一个独立的你一次使用整个服务还是一次为一个人服务? restful可以在任何给定时间为许多独特和不同的客户端应用程序/解决方案提供服务吗?不是真的得到wcf和restful wcf之间的区别?

如果我创建一个解决方案wcf服务库和一个“主机”程序说一个允许发布和删除等的控制台应用程序然后我创建另一个应用程序并添加第一个灵魂服务库的服务参考我应该能够检索数据和发布数据等很好。但是,对于使它有所不同的服务,它究竟做了什么呢?

1 个答案:

答案 0 :(得分:2)

这是否意味着你必须创建主机,你会怎么做?

通过使用ServiceHost类的实例,如果您在Windows应用程序或服务中的代码中执行此操作,请遵循以下格式:

 var host = new ServiceHost(typeof(ServiceClassToHost));
 host.Open();

另外如何在web.config文件中定义此服务,是否声明了URL和端口号?因为观看一些视频他们谈论端点而且我不确定在REST方面的基地址和端点有什么不同?

基本地址问题的一个很好的答案:

WCF service configuration file question regarding <baseAddresses>

正如您所猜测的那样,在IIS中托管时会完全忽略baseAddresses元素。该服务的基地址由网站&amp;放置wcf服务的虚拟目录。 即使在自托管时,也不需要baseAddresses。这只是一种便利,可以避免您必须为每个端点输入完整地址。如果存在,端点可以具有相对地址(相对于基址,即)。

从那里开始我正在制作客户端应用程序或可消费Web应用程序时,我只需在尝试将服务添加到解决方案时通过“添加服务引用”键入托管服务lib的Web服务器的URL ,然后我应该能够自由地与服务器之间传输数据吗?

如果你想在VS内部添加一个服务引用,那么它的作用是创建你需要作为客户端使用的代理,另一个路由是手动你自己的代理,或者使用svcutil.exe从中生成代理命令行。

我无法回答REST问题,抱歉。 ;)