Nancy总结(一)Nancy一个轻量的MVC框架

 Nancy是一个基于.net 和Mono 构建的HTTP服务框架,是一个很是轻量级的web框架。html


  设计用于处理 DELETE, GET, HEAD, OPTIONS, POST, PUT 和 PATCH 等请求方法,并提供简单优雅的 DSL 以返回响应。它提供了一个super-duper-happy-path的交互方式,无需定义各类复杂的路由规则,Nancy会根据你的请求路径自动匹配。Nancy和ASP.NET MVC不一样,它更多的是借鉴了Ruby的一些特性。git

 

  Nancy 的特色:
    1. 创建了自下而上的,而不是简单地DSL的现有框架。删除不少没必要要的限制和特性,尽量的只引用你须要的组件。使其保持简单。
    2. 随处运行。Nancy不是创建在任何特定的平台下的的,它能够在任何地方运行。Nancy支持运行在ASP.NET/IIS,WCF,自宿主和任何OWIN。
    3. 定义了很是轻量的 DELETE, GET, HEAD, OPTIONS, POST, PUT 和 PATCH 等请求。
    4. 集成了各类模板引擎(Razor, Spark, dotLiquid 和自带的SuperSimpleViewEngine)。
    5. 强大的请求路径匹配,包括先进的参数功能。路径匹配策略能够使用自定义实现您的各类具体需求。
    6. 简单的Response的语法,能够返回int、string、HttpStatusCode无需显式地转换或封装你的Response——你只是返回你的参数,其余的Nancy会帮你完成。
    7. 一个强大的、轻量级的、测试框架帮助您验证您的应用程序。github

 

  官方网站 : http://nancyfx.org/ 
  Github : https://github.com/NancyFx/Nancyweb

 

  1. 安装Nancybootstrap

    PM> Install-Package Nancyapp

    PM> Install-Package Nancy.Hosting.Aspnet //Nancy For Asp.net框架

    PM> Install-Package Nancy.Viewengines.Razor ide

    注意:要安装三个Nancy相关的包。测试

      Nancy ,网站

      Nancy.Hosting.Aspnet ,  Nancy 的  Asp.net 环境

      Nancy.Viewengines.Razor  提供Razor视图支持,

 

  2. 建立一个空的MVC 项目, ASP.NET Hosting

 

  3. 定义一个Bootstrapper.cs 类,参考例子里面的bootstrapper.cs文件

    记得配置静态文件目录,Nancy 的路由机制,全部的请求包括静态文件,都得走路由。因此得在bootstrapper.cs 文件里面配置,不然,会访问不到。

  

 protected override void ConfigureConventions(Nancy.Conventions.NancyConventions nancyConventions)
   {
       base.ConfigureConventions(nancyConventions);
       nancyConventions.StaticContentsConventions.Add(Nancy.Conventions.StaticContentConventionBuilder.AddDirectory("/", "public"));
   }

    

    还有,cshtml 或者 html 的文件目录,也得在bootstrapper.cs 中配置,不然会报错找不到cshtml 文件。

    

 

  4. 建立一个Nancy Module
  

复制代码
public class SampleModule : Nancy.NancyModule
{
  public SampleModule()
  {
    Get["/"] = _ => "Hello World!";
  }
}
相关文章
相关标签/搜索