本文主要介绍ServiceStack的安装,与第一个项目的创建。

详细了解ServiceStack,可参考官方网站: https://servicestack.net/ ,

Github上ServiceStack地址:https://github.com/ServiceStack/ServiceStackVS

一.安装

ServiceStack支持vs2012,2013. vs2012的用户安装还有2个前提条件:

1. 安装Microsoft Visual Studio Shell Redistributable 。

2. Update to the latest NuGet.

不安装上面2个包的话,创建项目会报错,至于NuGet,编译项目的时候用到。

安装ServiceStack步骤:

1. 打开vs. Tools->Extensions and Updates.

2. 在Online-> Visual Studio Gallery 里面搜索ServiceStackVS.

3. 搜到后直接安装,重启vs,就完成了。

二.创建项目

创建ServiceStackVS项目,打开vs,创建项目,在installed->template->visual C#中,会有8个ServiceStack模版。我们先创建一个空项目。

会有1个solution,4个project. 好了,第一个项目到此完成。

三. Hello world示例

ServiceStack由3部分构成:Request DTO (Data Transefer Object),Service implementation,Response DTO .

1. Request DTO和Response DTO在WebApplication2.ServiceModel项目中的hello.cs中:

[Route("/hello/{Name}")]
   public class Hello : IReturn<HelloResponse>
   { 
       public string Name { get; set; }
   }

public class HelloResponse
   {
      public string Result { get; set; }
   }

Route属性定义了服务访问服务的方式,部署服务或者运行服务,将浏览器地址栏输入http://<root_path>/hello/world,可以看到结果:

如果要返回json格式,可以在url后面加上 ?format=json 。

2 .Service implementation,在WebApplication2.ServiceInterface 项目中MyServices.cs文件中,

public class MyServices : Service
   {
      public object Any(Hello request)
     {
          return new HelloResponse { Result = "Hello, {0}!".Fmt(request.Name) };

}

}

这定义了返回结果,Any表示可以接受任何(post,get等)http请求。

github上面的英文文档有很详细的介绍。https://github.com/ServiceStack/ServiceStack/wiki .

ServiceStack 入门(一)的更多相关文章

  1. ServiceStack 入门(二)

    本文介绍创建一个简单的基于ServiceStack的项目. 1. 新建一个solution 2.创建完成后有4个project. ServiceModel是定义Request DTO 和 Reques ...

  2. ServiceStack.OrmLite 入门(一)

    软件环境: Win7 x64 SP1 SQL Server 2008r2 Visual Studio 2017 Professional 目标:取出示例数据库 ReportServer 的表 Role ...

  3. [你必须知道的NOSQL系列]专题二:Redis快速入门

    一.前言 在前一篇博文介绍了MongoDB基本操作,本来打算这篇博文继续介绍MongoDB的相关内容的,例如索引,主从备份等内容的,但是发现这些内容都可以通过官方文档都可以看到,并且都非常详细,所以这 ...

  4. 采访ServiceStack的项目领导Demis Bellot——第1部分(网摘)

    ServiceStack是一个开源的.支持.NET与Mono平台的REST Web Services框架.InfoQ有幸与Demis Bellot深入地讨论了这个项目.在这篇两部分报道的第1部分中,我 ...

  5. 采访ServiceStack的项目领导Demis Bellot——第1部分(转)

    ServiceStack是一个开源的.支持.NET与Mono平台的REST Web Services框架.InfoQ有幸与Demis Bellot深入地讨论了这个项目.在这篇两部分报道的第1部分中,我 ...

  6. 二:Redis快速入门及应用

    Redis的使用难吗?不难,Redis用好容易吗?不容易.Redis的使用虽然不难,但与业务结合的应用场景特别多.特别紧,用好并不容易.我们希望通过一篇文章及Demo,即可轻松.快速入门并学会应用. ...

  7. .Net Core使用Redis的一个入门简单Demo

    本例子讲述一个在.Net core环境中对Redis数据库进行增删改查操作. 首先,要安装好Redis数据库,至于怎么安装,本文不再赘述,可以自行百度,有很详细的教程. 安装好之后,在CMD中输入 r ...

  8. .NET分布式缓存Memcached从入门到实战

    一.课程介绍 在数据驱动的web开发中,经常要重复从数据库中取出相同的数据,这种重复极大的增加了数据库负载.缓存是解决这个问题的好办法.但是ASP.NET中的虽然已经可以实现对页面局部进行缓存,但还是 ...

  9. .NET分布式缓存Redis从入门到实战

    一.课程介绍 今天阿笨给大家带来一堂NOSQL的课程,本期的主角是Redis.希望大家学完本次分享课程后对redis有一个基本的了解和认识,并且熟悉和掌握 Redis在.NET中的使用. 本次分享课程 ...

随机推荐

  1. HDU2114 Calculate S(n) (取模算术)

    Calculate S(n) Time Limit: 10000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others)T ...

  2. MindManager_9.1.157使用模板时显示“参数错误”

    每次使用标准模板时都出现这个问题,上网搜索,原来是模板中存在的 “注释”导致的问题.具体原因不详,解决起来也简单,就是繁琐一点.转抄如下: 先找到模板文件夹,共四个文件夹Communcation.Pe ...

  3. source insight 下看不了utf-8中文字符

    utf-8中文在source insight中显示为乱码,写了一个简单脚本,在linux下将代码转换为GBK格式,然后在source insight下正常查看. #!/bin/sh function ...

  4. poj3233之经典矩阵乘法

    Matrix Power Series Time Limit: 3000MS   Memory Limit: 131072K Total Submissions: 12346   Accepted:  ...

  5. 打包静态库.a文件的方法(ar,ranlib,nm命令介绍)

    一 常用脚本 1 打包脚本 脚本如下,下面附上ar 和 ranlib命令参考(命令来自于网络) ALLLIB=*.aFILE=`ls *.a`#原来的库解压重命名 for F in $FILEdo   ...

  6. http://www.lanceyan.com/tech/mongodb/mongodb_repset1.html

    http://www.lanceyan.com/tech/mongodb/mongodb_repset1.html

  7. 【二分+最大团】【HDU3585】【maximum shortest distance】

    题目大意 在N个点钟 选出K个点 使得这K个点间的最小距离最大 二分距离,然后如果两点间距离小于它的边当做不存在,求出最大团,如果最大团>=K,向上缩小区间 <  K  ,  向下缩小区间 ...

  8. Equal 和==比较

    Equal 和==比较 ==操作符专门用来比较两个变量的值是否相等,也就是用于比较变量所对应的内存中所存储的数值是否相同,要比较两个基本类型的数据或两个引用变量是否相当,只能用==操作符. 如果一个变 ...

  9. VS2010中查询替换使用

    MSDN:http://msdn.microsoft.com/zh-cn/library/afy96z92.aspx 例子:

  10. L10 安装网卡驱动

    一.安装网卡驱动 1. 检查各种依赖包是否安装 2. 安装 加载网卡驱动: ip: