这篇文章给大家分享的是有关WCF如何配置子节点的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。
WCF配置子节点Services: 文件内已经有一个名为CatalogService的服务,实现服务的类名一致。在Service节点下,你可以看到Endpoint,它包含了服务的 ABCs:Address(地址), binding (绑定)和contract (协定).
◆Address: 你会发现地址是空的 ,不必担心,因为svc文件会作为基
◆Binding: webHttpBinding是WCF3.5提供的可以让服务以REST方式发布的新型绑定。这个绑定有两种模式,你可以通过特定的终结点行为来指定模式(通过设定behaviorConfiguration)
◆Contract: contract指定了WCF服务提供的功能。该属性被设为一个已经定义好的服务协定。要定义一个服务协定,你可以用ServiceContract修饰一个接口或者类。被ServiceContract修饰的接口或者类中,所有由OperationContract修饰的方法将被作为服务的操作暴露给客户。一般来说用接口做服务协定是更好的做法,这样做的好处是分离了协定与具体实现。但在我们使用的模板中却使用了类的方法,也就是说,接口是从类自动推断出来的(接口推断)。
◆BehaviorConfiguration: 对于webHttpBinding, 你需要将该属性设为一个拥有webHttp或enableWebScript子节点的终结点行为。
全面阐述WCF可靠性传输性能
编程实现WCF有序传递案例分析
关于WCF服务元数据交换编程揭密
三种WCF服务方式一点通
谈谈关于WCF事务属性
F配置子节点Behaviors: 将behaviors加入到服务或者服务终结点的目的在于改变runtime的默认行为或者加入定制的扩展。你会发现我们使用的模板已经声明了一个名为 CatalogServiceAspNetAjaxBehavior的终结点行为. 该行为有一个enableWebScript 元素。enableWebScript是两种可能的终结点行为之一,另一种就是webHttp。事实上enableWebScript是webHttp用来提供AJAX 功能(比如生成客户端代理)的子类
WCF配置子节点ServiceHostingEnvironment: 跟ASP.Net运行的WCF服务的默认配置是让两者互不干扰 例如,ASP.NET runtime 不参与WCF请求的处理. WCF服务也不能使用ASP.NET context 和 session 这样的功能. 而我们这里的配置是将aspNetCompatibilityEnabled 设为true, 在这种设置下WCF请求就会加到ASP.Net 的请求流水线里了。
*要使WCF支持REST,只要在该配置文件中注意最重要的两点:1)binding应设为webHttpBinding 2) endpoint behavior要设定为webHttp或enableWebScript
CatalogService.cs [ServiceContract(Namespace = "")] [AspNetCompatibilityRequirements(RequirementsMode = AspNetCompatibilityRequirementsMode.Allowed)] public class CatalogService { // Add [WebGet] attribute to use HTTP GET [OperationContract] public void DoWork() { // Add your operation implementation here return; } // Add more operations here and mark them with [OperationContract] }
在这里我们就真得做点儿事儿了。如果已经读了上面的内容,你应该已经注意到我们已经用接口推断的方法定义了的服务协定,就是说用ServiceContract属性修饰了一个类而不是一个接口。无论如何,我们要开始做一点儿实现了。***件事儿是设定ServiceContract属性的NameSpace参数。这一点非常重要。客户端用于调用WCF服务的代理的名字空间就是从这里拿的。
感谢各位的阅读!关于“WCF如何配置子节点”这篇文章就分享到这里了,希望以上内容可以对大家有一定的帮助,让大家可以学到更多知识,如果觉得文章不错,可以把它分享出去让更多的人看到吧!
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。