zoukankan      html  css  js  c++  java
  • Nancy总结(一)Nancy一个轻量的MVC框架

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


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

      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. 一个强大的、轻量级的、测试框架帮助您验证您的应用程序。

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

      1. 安装Nancy

        PM> Install-Package Nancy

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

        PM> Install-Package Nancy.Viewengines.Razor 

        注意:要安装三个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!";
      }
    }
  • 相关阅读:
    131. Palindrome Partitioning
    130. Surrounded Regions
    129. Sum Root to Leaf Numbers
    128. Longest Consecutive Sequence
    125. Valid Palindrome
    124. Binary Tree Maximum Path Sum
    122. Best Time to Buy and Sell Stock II
    121. Best Time to Buy and Sell Stock
    120. Triangle
    119. Pascal's Triangle II
  • 原文地址:https://www.cnblogs.com/zhangkeyu/p/6663846.html
Copyright © 2011-2022 走看看