zoukankan      html  css  js  c++  java
  • ServiceStack入门

    来源:https://github.com/ServiceStack/ServiceStack/wiki/Create-your-first-webservice

    1、新建一个空asp.net 项目,用NuGet安装serviceStack包,配置Web.Config

    <system.web>
      <httpHandlers>
        <add path="*" type="ServiceStack.WebHost.Endpoints.ServiceStackHttpHandlerFactory, ServiceStack" verb="*"/>
      </httpHandlers>
    </system.web>
    
    <!-- Required for IIS 7.0 (and above?) -->
    <system.webServer>
      <validation validateIntegratedModeConfiguration="false" />
      <handlers>
        <add path="*" name="ServiceStack.Factory" type="ServiceStack.WebHost.Endpoints.ServiceStackHttpHandlerFactory, ServiceStack" verb="*" preCondition="integratedMode" resourceType="Unspecified" allowPathInfo="true" />
      </handlers>
    </system.webServer>

    2、实现服务

    Each service in ServiceStack consists of three parts(每个服务由三部分构成):

    • Request DTO
    • Service implementation
    • Response DTO
    //Request DTO输入
    using
    ServiceStack.ServiceHost; [Route("/hello")] [Route("/hello/{Name}")] public class Hello { public string Name { get; set; } }
    //Response DTO输出
    public
    class HelloResponse { public string Result { get; set; } }
    //实现一个服务
    using
    ServiceStack.ServiceInterface; public class HelloService : Service { public object Any(Hello request) { return new HelloResponse { Result = "Hello, " + request.Name }; } }

    3、创建服务主机

    public class HelloAppHost : AppHostBase
        {
            //告诉seviceStack你的服务程序名及如何找到你的服务程序
            public HelloAppHost() 
            : base("Hello Web Services", typeof(HelloService).Assembly) { }
    
            public override void Configure(Funq.Container container)
            {
                //注册你的服务所使用的任何依赖
                //container.Register<ICacheClient>(new MemoryCacheClient());
            }
        }
    
    //同理,你可以为此而创建多个服务程序主机,以发布多服务程序
    

      

    4、初始化并启动服务主机,开始发布服务

    //Gloabal.cs文件
    //注册服务
    public
    class Global : System.Web.HttpApplication { //Initialize your application singleton protected void Application_Start(object sender, EventArgs e) { new HelloAppHost().Init();
        //初始化其它服务主机...以实现同一asp.net程序中发布多个服务(note:个人见解) } }
  • 相关阅读:
    求随机数平均值方法 求随机数方差方法 求正态分布的随机数
    combox 绑定
    winform界面textbox框 鼠标经过时出现浮动
    Regex
    C# 3.0 一行求方差
    通过Linq 实现DataTable Group By
    ORACLE 时间运算
    发布几个国外的XHTML模板站,DIV+CSS模板下载
    C# 3.0新特性系列:隐含类型var
    在NTier 或多层应用程序中使用ADO.NET Entity Framework
  • 原文地址:https://www.cnblogs.com/loxen/p/3314621.html
Copyright © 2011-2022 走看看