1. Nancy官网——https://github.com/NancyFx/Nancy
  2. 概述:Nancy是一个开源的Web轻型框架内核符合MVC思想,有开发方便,路由简单的特点,而且功能齐全
  3. 起步:Hellow World

一.建立Asp.Net空Web应用程序

二.使用NuGet添加Nancy包的引用

简洁的MVC思想框架——Nancy(环境配置与Get操作)-LMLPHP

安装三个Nancy应用包——Nancy.Hosting.Aspnet;Nancy;Nancy.Viewengines.Razor;

简洁的MVC思想框架——Nancy(环境配置与Get操作)-LMLPHP

简洁的MVC思想框架——Nancy(环境配置与Get操作)-LMLPHP

简洁的MVC思想框架——Nancy(环境配置与Get操作)-LMLPHP

至此,环境已经搭好,上代码(注:必须在项目根目录建立Views文件夹,Nancy查找视图默认从该文件找起)

Nancy含Get、Post、Delete和Put等常用响应机制。

新建一个类(控制器)基于NancyModule类

public class Home:NancyModule
{
public Home()
{
Get["/"] = p =>
{
return "ddd";
}; Get["/{Name}/{Id}"] = p =>
{
return "Name:" + p.Name + "id:" + p.Id;
};
}
}

直接运行,则默认进入根目录下 返回“ddd”,如图:

简洁的MVC思想框架——Nancy(环境配置与Get操作)-LMLPHP

在地址栏输入相关信息则指定返回输入的参数,如图:

简洁的MVC思想框架——Nancy(环境配置与Get操作)-LMLPHP

此外,Nancy还支持Model类,现在类库中建立一个新类

 namespace Nancy.Data
{
/// <summary>
/// 用户类
/// </summary>
public class SysUser
{
/// <summary>
/// 编号
/// </summary>
public string Id { get; set; }
/// <summary>
/// 用户Id
/// </summary>
public string userId { get; set; }
/// <summary>
/// 用户密码
/// </summary>
public string userPwd { get; set; }
}
}

在相应控制器中调用该类:

 //指定跳转页面 路径为Views文件夹下的User文件中test.cshtml页面
Get["/test"] = p =>
{
SysUser user = new SysUser();
user.userId = "test123";
user.userPwd = "tser8888";
return View["User/test.cshtml", user];
};

在视图中页面获得传入的user参数:

<!DOCTYPE html>

<html>
<head>
<meta name="viewport" content="width=device-width" />
<title></title>
</head>
<body>
<div>
<p>用户名:@Model.userId</p>
<p>密码:@Model.userPwd</p>
</div>
</body>
</html>

运行结果:

简洁的MVC思想框架——Nancy(环境配置与Get操作)-LMLPHP

最后,附上项目结构图:

简洁的MVC思想框架——Nancy(环境配置与Get操作)-LMLPHP

之后,还会继续介绍Nancy的Post应用以及相应的其他应用等信息。

05-11 18:12