星空网 > 软件开发 > ASP.net

[Nancy On .Net Core] 轻量级的web框架

    .net core现在已经有了大的发展,虽然笔者现在已经从事python开发,但是一直在关注.net的发展,在逛博客园的时候,发现有大家都会提到Nancy这个框架,在简单的使用之后,发现竟然是如此的简单而优雅

public class SampleModule : Nancy.NancyModule{  public SampleModule()  {    Get["/"] = _ => "Hello World!";  }}

  代码已经上传到git上,包含源代码和docker打包脚本,大家有兴趣可以自行研究

      https://github.com/BruceDone/webapi

 

      这和python里面的flask 类似,都是简单好用。今天我们来做一个简单好用的.net core 版的nancy 应用,然后将程序打包到docker 并发布和使用。

  •  开发环境:Marc Pro
  •  IDE: vscode
  • .Net Core 
  • Docker

     在开发前请保证以上的环境都已经安装好了

  1.    创建文件夹webapi 执行命令             
dotnet new

  2.    执行完后将初使化一些必要的文件 ,打开package.json,将如下内容复制进去

   

{ "version": "1.0.0-*", "buildOptions": {  "debugType": "portable",  "emitEntryPoint": true }, "dependencies": {  "Microsoft.NETCore.App": {   "version": "1.0.0",   "type": "platform"  },  "Microsoft.AspNetCore.Server.Kestrel": "1.0.0",  "Microsoft.AspNetCore.Owin": "1.0.0",  "Nancy": "2.0.0-barneyrubble" }, "commands": {  "web": "Microsoft.AspNet.Server.Kestrel" }, "frameworks": {  "netcoreapp1.0": {} }}

    3.    OK.保存的时候vscode 会自动导入相关的dll文件,引入成功后我们先创建StartUp.cs文件 

using Microsoft.AspNetCore.Builder;using Nancy.Owin;namespace NancyApplication{  public class Startup  {    public void Configure(IApplicationBuilder app)    {      app.UseOwin(x => x.UseNancy());    }  }}

  4.    保存后创建HomeModel.cs 文件

using Nancy;namespace NancyApplication{  public class HomeModule : NancyModule  {    public HomeModule()    {      Get("/", args => "Hello World, it's Nancy on .NET Core");    }  }  public class PageModule : NancyModule  {    public PageModule()    {      Get("/person/{name}", args => new Person() { Name = args.name });    }  }  public class Person  {    public string Name { get; set; }  }}

 

   路由与返回值都已经写好,我这里就不解释相关的代码了,有兴趣的可以自行深入了解

 

  4.    编辑Program.cs文件

using System.IO;using Microsoft.AspNetCore.Builder;using Microsoft.AspNetCore.Hosting; namespace NancyApplication{  public class Program  {    public static void Main(string[] args)    {      var host = new WebHostBuilder()        .UseContentRoot(Directory.GetCurrentDirectory())        .UseKestrel()        .UseUrls("http://*:5000")        .UseStartup<Startup>()        .Build();       host.Run();    }  }}

  

  5.    OK,必要的文件都已经准备好了,然后运行 dotnet run ,访问http://127.0.0.1:5000 就可以看到结果,[Nancy On .Net Core] 轻量级的web框架    

     

 6.使用Docker的来运行程序

 

[Nancy On .Net Core] 轻量级的web框架

 

访问我们的api地址:

± |master ?:1 ✗| → curl http://127.0.0.1:5000/person/bruce{"name":"bruce"}

 

 

  程序和代码我都已经打包到git 上了,里面有相关的说明 ,程序很方便的打包成了docker ,这样就可以很轻松的集群或者部署。

 

  git地址:https://github.com/BruceDone/webapi

 

  如果你觉得对你有帮助,请不要吝啬你的star ,谢谢:)




原标题:[Nancy On .Net Core] 轻量级的web框架

关键词:.NET

*特别声明:以上内容来自于网络收集,著作权属原作者所有,如有侵权,请联系我们: admin#shaoqun.com (#换成@)。

售后服务用这些办法写邮件,竟然挽回了比前任更难挽回的客户:https://www.ikjzd.com/articles/13250
锂电池UN38.3报告:https://www.ikjzd.com/articles/132510
eBay第三季度营收26亿美元!总交易额达250亿美元...:https://www.ikjzd.com/articles/132511
同为大卖,有人营收56.78亿,有人净利润却下滑近一半!:https://www.ikjzd.com/articles/132512
亚马逊发货政策改动!要提供新的信息:https://www.ikjzd.com/articles/132513
注意!亚马逊再次调整了搜索算法!:https://www.ikjzd.com/articles/132514
深圳到西安自驾路线攻略 深圳到西安自驾最佳路线:https://www.vstour.cn/a/411228.html
松花蛋是哪里的特产松花蛋的产地:https://www.vstour.cn/a/411229.html
相关文章
我的浏览记录
最新相关资讯
海外公司注册 | 跨境电商服务平台 | 深圳旅行社 | 东南亚物流