zoukankan      html  css  js  c++  java
  • ASP.NET Core开发-使用Nancy框架

    Nancy简介

    Nancy是一个轻量级的独立的框架,下面是官网的一些介绍:

    • Nancy 是一个轻量级用于构建基于 HTTP 的 Web 服务,基于 .NET 和 Mono 平台,框架的目标是保持尽可能多的方式,并提供一个super-duper-happy-path所有交互。
    • Nancy 设计用于处理 DELETEGETHEADOPTIONSPOSTPUT和 PATCH 等请求方法,并提供简单优雅的 DSL 以返回响应。让你有更多时间专注于你的代码和程序。

    官方地址:http://nancyfx.org   GitHub:https://github.com/NancyFx/Nancy

    Nancy 在前两天 发布了一个  v2.0.0-barneyrubble 版本,支持ASP.NET Core 1.0。

    如何在 ASP.NET Core 中使用 Nancy 框架,下面我们就来学习。

    创建ASP.NET Core Nancy项目

    宿主使用 ASP.NET Core Host Kestrel

    首先新建一个ASP.NET Core 应用程序,下一步选择空的模板。

    下面来添加引用。

    首先添加 Microsoft.AspNetCore.Owin

    Install-Package Microsoft.AspNetCore.Owin

    然后添加 Nancy

    Install-Package Nancy -Pre

    添加好以后我们就可以来编写代码。

    在 Startup.cs 添加 Nancy.Owin 引用,并在Configure 方法加入如下代码:

            public void Configure(IApplicationBuilder app, IHostingEnvironment env, ILoggerFactory loggerFactory)
            {
                loggerFactory.AddConsole();
    
                if (env.IsDevelopment())
                {
                    app.UseDeveloperExceptionPage();
                }
                app.UseOwin(x => x.UseNancy());
            }

    然后我们来添加Module,可以理解为是 Nancy的 Controller 。

    这里添加一个HomeModule,我们添加一个类 HomeModule.cs ,然后继承 NancyModule。

        public class HomeModule:NancyModule
        {
            public HomeModule()
            {
                Get("/", r => "Nancy running on ASP.NET Core LineZero");
                Get("/{name}", r => "简单的路由模板,路由参数:"+r.name);
                Get("/404", r => HttpStatusCode.NotFound);
            }
        }

    然后运行程序,这里我们使用 Kestrel 运行。

    http://localhost:5000

    http://localhost:5000/linezero

    http://localhost:5000/404

    这个是Nancy自带的404,我们也可以自己处理。

    本篇主要讲解Nancy 在 ASP.NET Core中的使用,更多Nancy的介绍及使用,可以参考我之前的一些文章,Nancy 是的一个非常轻量型的框架。

    如果你觉得本文对你有帮助,请点击“推荐”,谢谢。

  • 相关阅读:
    RUST实践.md
    redis.md
    opencvrust.md
    aws rds can't connect to mysql server on 'xx'
    Foundation ActionScript 3.0 With Flash CS3 And Flex
    Foundation Flash Applications for Mobile Devices
    Flash Mobile Developing Android and iOS Applications
    Flash Game Development by Example
    Actionscript 3.0 迁移指南
    在SWT中非UI线程控制界面
  • 原文地址:https://www.cnblogs.com/linezero/p/5672772.html
Copyright © 2011-2022 走看看