zoukankan      html  css  js  c++  java
  • Quick Start WCF 4.0 RESTful Service Setup

    1.建立一个 Asp.net Website / WebApplication 

    2. 引用 System.ServiceModel 系列的dll

    3. 添加以下的类和接口

    View Code
        [ServiceContract]// define a service contract
    interface IPersonService
    {
    [OperationContract]
    Person GetPerson(
    string id);

    [OperationContract]
    Person InsertPerson(Person person);

    [OperationContract]
    Person UpdatePerson(
    string id, Person person);

    [OperationContract]
    void DeletePerson(string id);
    }

    [AspNetCompatibilityRequirements(RequirementsMode
    = AspNetCompatibilityRequirementsMode.Allowed)] // enablt asp.net compatibility , then wcf service can work in asp.net
    public class PersonService : IPersonService
    {
    [WebGet(UriTemplate
    = "Person({id})")]
    public Person GetPerson(string id)
    {
    return new Person();
    }

    [WebInvoke(UriTemplate
    = "Person", Method = "POST")]
    public Person InsertPerson(Person person)
    {
    return new Person();
    }

    [WebInvoke(UriTemplate
    = "Person({id})", Method = "PUT")]
    public Person UpdatePerson(string id, Person person)
    {
    return new Person();
    }

    [WebInvoke(UriTemplate
    = "Person({id})", Method = "DELETE")]
    public void DeletePerson(string id)
    {
    }
    }

    [DataContract]
    // define a data contract
    public class Person
    {
    [DataMember]
    public string Name { get; set; }
    [DataMember]
    public int Age { get; set; }

    }

    4.配置以下内容在web.config

      <system.serviceModel>
    <serviceHostingEnvironment aspNetCompatibilityEnabled="true" />
    <standardEndpoints>
    <webHttpEndpoint>
    <standardEndpoint name="" helpEnabled="true" automaticFormatSelectionEnabled="true"/>
    </webHttpEndpoint>
    </standardEndpoints>
    </system.serviceModel>

    5.注册一个好看点的地址在global.asax

    protected void Application_Start(object sender, EventArgs e)
    {
    RouteTable.Routes.Add(
    new ServiceRoute("PersonService", new WebServiceHostFactory(), typeof(PersonService)));
    }

    如果是MVC Project 那么注册代码如下

    routes.Add(new ServiceRoute("Person", new WebServiceHostFactory(), typeof(PersonService)));

    好了 一切ok。。。

    wcf4.0简化了很多配置。。。。

    帮助界面如下所示 (正式的根地址还是: http://localhost:/35034/Personservice ) 

    单个方法的帮助信息就更详细了

  • 相关阅读:
    Windows 下完全卸载 oracle 10g
    WINDOWS SERVER 工作笔记
    白话 WPF/SL 绑定(Binding) (上)
    系统架构整理笔记待续
    在VMware Workstation 中添加硬盘镜像(*.vmdk)
    HTML+CSS 工作笔记
    用Paragon Partition Manager 7.0 给Windows Server 2003 C盘增加空间
    磁盘分区合并增容(WIN 7, XP)
    Oracle 11G Client 客户端安装步骤(图文详解)
    snk
  • 原文地址:https://www.cnblogs.com/PurpleTide/p/2114717.html
Copyright © 2011-2022 走看看