Nancy之开篇

简介:


rrbrbNancyFx是一个轻量级的web开发框架(基于.net),我使用它,主要是它可以不依赖IIS(因为我当前的项目都是轻量级的BS框架),可以selfhost

Nancy的网址为:http://nancyfx.org/

为了在VS中快速开发,可以下载它的项目模板,下载地址:http://sidewaffle.com/

我使用的是VS2015,下载安装后,就可以创建Nancyselfhost项目了,如下图:

wKiom1c5kMKDziiOAADwZ5_1m78593.png


创建完项目后

wKioL1c5kaqQOiLvAABbuaH3oj4061.png

可看的地方有四个

1、Program.cs

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
using  System;
using  Nancy.Hosting.Self;
namespace  TestSelfHostWeb
{
     class  Program
     {
         static  void  Main( string [] args)
         {
             var  uri =
                 new  Uri( "http://localhost:3579" );
              using  ( var  host =  new  NancyHost(uri))
             {
                 host.Start();
                 Console.WriteLine( "Your application is running on "  + uri);
                 Console.WriteLine( "Press any [Enter] to close the host." );
                 Console.ReadLine();
             }
         }
     }
}


很明显,是selfhost的主要代码,很简单,就是开启了一个本机的3579端口,用来接收Browser的请求,注意的是启动时要以管理员身份启动。

2、IndexModule.cs

1
2
3
4
5
6
7
8
9
10
11
12
13
14
using  Nancy;
namespace  TestSelfHostWeb.Modules
{
     public  class  IndexModule : NancyModule
     {
         public  IndexModule()
         {
             Get[ "/" ] = parameters =>
             {
                 return  View[ "index" ];
             };
         }
     }
}

也是Nancy比较爽的地方,只要继承NancyModule就可以自动挂载在host中,Browser输入正确的Url就可以访问了。当前Get对应的是get请求,自然有post等其他请求了。

3、index.cshtml

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
<!DOCTYPE html>
< html  lang = "en" >
< head >
     < meta  charset = "utf-8"  />
     < title >TestSelfHostWeb</ title >
         < style  type = "text/css" >
                  body {
                          text-align: center;
                  }
         </ style >
</ head >
< body >
         < img  src = "~/Content/nancy-logo.png"  alt = "Nancy logo"  />< br  />
         This view was rendered using the Nancy Razor view engine
</ body >
</ html >

这是个标准Razor页面,与asp.netmvc中的Razor是一样的,不多说了。

4、Bootstrapper.cs

1
2
3
4
5
6
7
8
9
10
using  Nancy;
namespace  TestSelfHostWeb
{
     public  class  Bootstrapper : DefaultNancyBootstrapper
         {
         // The bootstrapper enables you to reconfigure the composition of the framework,
         // by overriding the various methods and properties.
         // For more information https://github.com/NancyFx/Nancy/wiki/Bootstrapper
     }
}
是web的启动入口,有点像asp.net中的Global文件,可以重写一些类成员。

接下来可以跑一下了,可以以管理员身份运行VS,直接F5启动程序(报错也继续),也可以找到执行程序,以管理员运行,然后在Browser中输入本地ID和端口,效果如下:

wKioL1c5lTSTP2Z0AABlMyKtTr8773.png


















本文转自桂素伟51CTO博客,原文链接: http://blog.51cto.com/axzxs/1773988,如需转载请自行联系原作者



相关文章
|
3月前
|
算法 数据可视化 图形学
GraphVisual开篇
GraphVisual开篇
|
5月前
|
程序员 开发工具 数据库
SwiftUI 项目实战·专栏开篇词
SwiftUI 项目实战·专栏开篇词
34 0
|
Linux C++
Framework笔记 | 引子
Framework笔记 | 引子
|
安全 数据安全/隐私保护
WCF安全1-开篇
WCF安全1-开篇
WCF安全1-开篇
|
前端开发 数据库 关系型数据库
Nancy简单实战之NancyMusicStore(六):写在最后
原文:Nancy简单实战之NancyMusicStore(六):写在最后 前言 由于公司搬家后,住的地方离上班的地方远了N倍,以前是走路十多分钟就可以到公司的,上班时间也从9:00提早到8:30 现在每天上班都是先坐公交,然后再坐地铁,在这段路上比较浪费时间而且每天都是要6:30起床,22:45左右睡觉 保证充足的睡眠,这样才能保证上班有精神。
889 0
|
数据安全/隐私保护
谈谈Nancy中让人又爱又恨的Diagnostics【上篇】
原文:谈谈Nancy中让人又爱又恨的Diagnostics【上篇】 前言 在Nancy中有个十分不错的功能-Diagnostics,可以说这个功能让人又爱又恨。 或许我们都做过下面这样的一些尝试: 记录某一个功能用到的相关技术信息 记录下网站的访问记录 全局配置某些框架内部功能的开关 ..... 当然,对于上面提到的这些东西,现在都有非常成熟的解决方案可以用。
1037 0
|
XML JSON 数据格式
Nancy Web框架
原文 Nancy Web框架   Nancy框架 一、创建第一个Nancy应用 二、探索Nancy的module 1. 模块能够在全局被发现 2. 使用模块为路由创建一个根 三、定义路由 1.
1364 0
|
PHP
Laravel 学习开篇
第一阶段就是:画鸡蛋 忘了是哪一位欧洲画家的的事情了 反正类比到编程,学习的第一步总是临摹 我原本是 TP 爱好者,想转 Laravel 很久了,但不得不说这个框架的学习门槛是真的高 记得第一次打开 Laravel 的文档,看完第一张就被震慑住了 第一...
1150 0

热门文章

最新文章