用NFinal框架开发的项目类似于MVC的那种开发方式,有Controller层、Model层、View层,还包括表现层Web层,在NFinal开发的项目中真正执行的代码也就是Web层中的代码,Web中的代码是根据Controller与View模板中的代码生成的执行代码,我们只需要在Controller中写好逻辑,在View中设计好页面然后运行WebComplier.aspx即可生成整个Web文件夹,然后只需要运行Web中相应的HTML页面即可。那么首先来看下控制器相关的东西。

控制器的定义

1.控制器必须写在Controllers目录下.

2.命名空间采用默认的命名空间,类名必须以Controller结尾,且必须继承自Controller基类.

3.其函数返回值类型为void,修饰符为public.

例:

1、在Controllers下新建SampleController.cs

  using System.Collections.Generic;
using System.Web;
//由于项目名和模块名不同,命名空间也会不同,复制该代码也是无法运行的.
//必须手动添加该类,或是修改为正确的命名空间.
namespace WebMvc.App.Controllers
{
public class SampleController:Controller
{
public void Show()
{
Write("Hello World.");
}
}
}

Controller Code

2、右键点击WebCompiler.aspx选择在浏览器中查看

生成开始

生成结束

3、刷新项目文件夹会发现在Web层的Default文件夹下会出现SampleController文件夹.右键点击该文件夹选择包括在项目中,可以看到文件夹下有Show.cs与Show.html两个文件.

其中Show.cs的代码如下:

   using System;
using System.Collections.Generic;
using System.Web; namespace WebMvc.App.Web.Default.SampleController
{
public class ShowAction : Controller
{
public ShowAction(System.IO.TextWriter tw):base(tw){}
public ShowAction(string fileName) : base(fileName) {}
public void Show()
{
Write("Hello World.");
}
}
}

Show.cs Code

Show.html中的代码如下:

 <!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
<title</title>
</head>
<body>
<script>
window.location.href = "/App/SampleController/Show.htm";
</script>
</body>
</html>

Show中的代码只是跳转并执行SampleController下的Show()方法.

4、右键点击并选择在浏览器中查看.可以看到浏览器输出Hello World.

NFinal 揭秘之控制器的更多相关文章

  1. NFinal 控制器—URL

    URL路由规则 规则:http://网址/模块名/控制器的相对路径的文件名/函数名.htm 例: http://localhost/App/IndexController/Index.htmhttp: ...

  2. 新作《ASP.NET MVC 5框架揭秘》正式出版

    ASP.NET MVC是一个建立在ASP.NET平台上基于MVC模式的Web开发框架,它提供了一种与Web Form完全不同的开发方式.ASP.NET Web Form借鉴了Windows Form基 ...

  3. 新作《ASP.NET Web API 2框架揭秘》正式出版

    我觉得大部分人都是“眼球动物“,他们关注的往往都是目光所及的东西.对于很多软件从业者来说,他们对看得见(具有UI界面)的应用抱有极大的热忱,但是对背后支撑整个应用的服务却显得较为冷漠.如果我们将整个“ ...

  4. 【转】【译】JavaScript魔法揭秘--探索当前流行框架中部分功能的处理机制

    推荐语: 今天推荐一篇华为同事的同事翻译的一篇文章,推荐的主要原因是作为一个华为员工居然晚上还能写文章,由不得小钗不佩服!!! 其中的jQuery.angular.react皆是十分优秀的框架,各有特 ...

  5. NFinal中增加生成页面自动带入js和css

    增加在WebCompiler.aspx页面中的application.CreateCompile(true);方法里. //写aspx页面的自动提示层 #region 插入js&css com ...

  6. 【腾讯Bugly干货分享】iOS黑客技术大揭秘

    本文来自于腾讯bugly开发者社区,非经作者同意,请勿转载,原文地址:http://dev.qq.com/topic/5791da152168f2690e72daa4 “8小时内拼工作,8小时外拼成长 ...

  7. ASP.NET Web API 2框架揭秘

    ASP.NET Web API 2框架揭秘(.NET领域再现力作顶级专家精讲微软全新轻量级通信平台) 蒋金楠 著   ISBN 978-7-121-23536-8 2014年7月出版 定价:108.0 ...

  8. 快速入门系列--MVC--03控制器和IOC应用

    Asp.net MVC也接触好久了,但由于自己一直主要负责后台,尤其是数据库方面的工作对于该框架并没有一个很好的了解,尤其是蒋金楠大师的ASP.NET MVC4框架剖析一书都买了2年多了,真正认真看过 ...

  9. 揭秘TPM安全芯片技术及加密应用

    揭秘TPM安全芯片技术及加密应用 首发:http://safe.it168.com/a2012/0912/1396/000001396884.shtml 从2003年开始,重要数据丢失已经成为严重的信 ...

随机推荐

  1. ORACLE模拟临时文件、日志成员、口令文件丢失情况与恢复【weber出品】

    一.临时表空间文件.日志文件和口令文件都属于非关键性文件,因为这些文件丢失后并不会影响到整个数据库的完整性. 但是,当这些文件丢失后我们需要快速的找回这些文件.接下来我将模拟临时表空间文件.日志文件和 ...

  2. 解决MacOS Terminal打开慢的问题

    用了Mac有一段时间了,突然发现Terminal打开奇慢,每次打开都显示logining...,打开大概要个五六秒的时间,以前打开都是瞬间打开的啊,这对于我们这种追求速度的程序员怎么受的了呢.开始一直 ...

  3. php时间戳与时间转换

    PHP时间大的来分有两种,一是时间戳类型(1228348800),二是正常日期格式(2008-12-4) 所以存到数据库也有两种形式了(真正不止,我的应用就两种),时间戳类型我是保存为字符串的,这个是 ...

  4. HTML5 布局标签

    HTML5是HTML标准的下一个版本.越来越多的程序员开始HTML5来构建网站,相对HTML4,HTML5新增的带有语义化的标签可以代替div进行页面布局(与html5.js结合起来时可以放心使用 ) ...

  5. 关于python27 中文编码

    本博文已移致独立博客:www.pubwin2009.net 传送门:http://www.pubwin2009.net/index.php/pubwin/42.html 看了网上好多的资料,以前一直不 ...

  6. Java学习笔记--注解

    注解的使用与实例:http://www.cnblogs.com/pepcod/archive/2013/02/16/2913474.html 注解的作用及使用方法:http://wenku.baidu ...

  7. 《转》JAVA动态代理(JDK和CGLIB)

    该文章转自:http://www.cnblogs.com/jqyp/archive/2010/08/20/1805041.html JAVA的动态代理 代理模式 代理模式是常用的java设计模式,他的 ...

  8. VC维

    vc理论(Vapnik–Chervonenkis theory )是由 Vladimir Vapnik 和 Alexey Chervonenkis发明的.该理论试图从统计学的角度解释学习的过程.而VC ...

  9. Linux cat和EOF的使用

    在某些场合,可能我们需要在脚本中生成一个临时文件,然后把该文件作为最终文件放入目录中.(可参考ntop.spec文件)这样有几个好处,其中之一就是临时文件不是唯一的,可以通过变量赋值,也可根据不同的判 ...

  10. linux tee 命令详解

    man tee: NAME tee - read from standard input and write to standard output and files SYNOPSIS tee [OP ...