标签:wcf
一种软件架构风格,设计风格而不是标准,只是提供了一组设计原则和约束条件。它主要用于客户端和服务器交互类的软件。基于这个风格设计的软件可以更简洁,更有层次,更易于实现缓存等机制。(关于这种编程风格大家可以百度下)
前面已经讲过,但自己书中不会创建一个restful风格的服务,最近看到一份外文博客分享给大家,这里这是创建,具体原理,我能懂了再分享个大家。
新建wcf服务应用程序
添加新建项
修改接口
[ServiceContract] public interface IRestService { [WebInvoke(Method = "GET", ResponseFormat = WebMessageFormat.Xml, BodyStyle = WebMessageBodyStyle.Wrapped, UriTemplate = "xml/{id}")] string XMLData(stringid); [WebInvoke(Method = "Get", ResponseFormat = WebMessageFormat.Json, BodyStyle = WebMessageBodyStyle.Wrapped, UriTemplate = "Json/{id}")] string JsonDate(stringid); }
实现方法
public class RestService : IRestService { public stringXMLData(string id) { return "you requestproduce" + id; } public stringJsonDate(string id) { return "you requestproduce" + id; } }
修改XML文档
<system.serviceModel> <behaviors> <serviceBehaviors> <behaviorname="ServiceBehavior"> <!--为避免泄漏元数据信息,请在部署前将以下值设置为 false 并删除上面的元数据终结点 --> <serviceMetadatahttpGetEnabled="true"/> <!--要接收故障异常详细信息以进行调试,请将以下值设置为 true。在部署前设置为 false 以避免泄漏异常信息 --> <serviceDebugincludeExceptionDetailInFaults="false"/> </behavior> </serviceBehaviors> <endpointBehaviors> <behaviorname="web"> <webHttp/> </behavior> </endpointBehaviors> </behaviors> <services> <servicename="Restful.RestService"behaviorConfiguration="ServiceBehavior"> <endpointaddress=""binding="webHttpBinding"contract="Restful.IRestService"behaviorConfiguration="web"> </endpoint> </service> </services> <serviceHostingEnvironmentmultipleSiteBindingsEnabled="true" /> </system.serviceModel>
慢慢多学,天天学。走编程解决问题。
标签:wcf
原文地址:http://blog.csdn.net/jielizhao/article/details/43268197