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


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

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

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

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

    至此,环境已经搭好,上代码(注:必须在项目根目录建立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”,如图:

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

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

     1 namespace Nancy.Data
     2 {
     3     /// <summary>
     4     /// 用户类
     5     /// </summary>
     6      public class SysUser
     7     {
     8          /// <summary>
     9          /// 编号
    10          /// </summary>
    11          public string Id { get; set; }
    12          /// <summary>
    13          /// 用户Id
    14          /// </summary>
    15          public string userId { get; set; }
    16          /// <summary>
    17          /// 用户密码
    18          /// </summary>
    19          public string userPwd { get; set; }
    20     }
    21 }

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

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

    在视图中页面获得传入的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>

    运行结果:

    最后,附上项目结构图:

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

    真正的谦卑是对真理持续不断的追求。
  • 相关阅读:
    [Vue]axios的使用
    Handler和Thread线程
    Android启动时闪一下黑屏或者白屏
    WebP图片格式
    ThreadLocal
    泛化,实现,依赖,关联(聚合,组合)
    深入解析AsyncTask
    Processes and Application Life Cycle
    深拷贝浅拷贝
    LCS(Longest Common Subsequence)
  • 原文地址:https://www.cnblogs.com/huanghzm/p/4072778.html
Copyright © 2020-2023  润新知