#Lucas
Lucas
LucasWeb框架是基于新的魔法糖思想创建的框架.
本框架有两大特点.1.所有框架里最简单易学易配置的.2.所有框架里效率最快的.
1.UrlRouter没有使用IOC注入及反射,而是根据Controller层直接生成Router代码,效率是任何.net框架无法比拟的.
2.只有一个文件夹,无需任何配置,复制到网站项目下运行即可使用.
3.重新实现了webform模版引擎中的部分功能.
4.在csharp源文件中进行了html代码压缩,令html代码压缩零损耗.
5.此框架开源.
https://git.oschina.net/LucasDot/Lucas.git
svn://git.oschina.net/LucasDot/Lucas
如果有任何问题请联系QQ:348764327.

使用方法:
配置:
1.把Lucas放入网站根目录.(Lucas目录在WebMvc项目下.其它的都是开发时测试使用.)
2.把Lucas/WebCompiler.aspx设置为启动项,运行.(框架会自动完成配置)
开发:
1.配置完成后,根目录会自动出现App目录,在Controllers下创建以Controller结尾的类,并使其继承自Lucas.BaseAction
例:
using System;
using System.Collections.Generic;
using System.Web;

namespace WebMvc.Man.Controllers
{
    public class IndexController:Lucas.BaseAction
    {
        public void Index()
        {
            string text = "欢迎使用Lucas Mvc框架。";
            View("IndexController/Index");
        }
    }
}

2.然后在App/Views/Default/IndexController下新建Index.aspx页面.文件夹名即Controller的类名,文件名即方法名.
修改模版:
<%@ Page Language="C#" %>
<!doctype html>
<html>
<body>
    <%=text%>
</body>
</html>
其中<%=%>即输出text变量中的值,只要是方法内的变量都可在此输出.当然也支持<%%>中直接添加csharp代码.
另外也可引入其它模版文件例如:<%@ Reference Page="~/App/Views/Default/Public/Header.aspx" %>

3.魔法糖思想.再次运行Lucas/WebCompiler.aspx文件,系统会在App/Web/Default/IndexController/下自动生成两个文件,Index.cs与Index.html
其内容如下:
using System;
using System.Collections.Generic;
using System.Web;

namespace WebMvc.Man.Web.Default.IndexController
{
    public class IndexAction : Lucas.BaseAction
    {
        public IndexAction(System.IO.TextWriter tw) : base(tw) { }
        public IndexAction(string fileName) : base(fileName) { }
        public void Index()
        {
            string text = "欢迎使用Lucas Mvc框架。";
            Write("<!doctype html><html><body>");
            Write(text);
            Write("</body></html>");
        }
    }
}
看到没有?直接生成了效率最高的Write函数,而且此代码中的html全部都是压缩过的.
bingo,这就是我所说提魔法糖思想!
再来看看index.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 = "/Man/IndexController/Index.htm";
    </script>
</body>
</html>
只有一句跳转语句.当你把此页设为启动项时,你可以调试index.cs文件,再也不用担心MVC测试时URL地址混乱了.
一般的MVC模块中的目录是不能分级的,而此框架可无限分级.
一般的MVC框架都需要烦索的设置,或模版支持,而此框架运行时会自配置.

Lucas,.net Web框架的更多相关文章

  1. python几个轻量级web框架

    python几个轻量级web框架 2016-04-11 18:04:34 惹不起的程咬金 阅读数 7944更多 分类专栏: 云计算/大数据/并行计算 Python   我最近发表了一篇名为 ‘7 Mi ...

  2. Python(九)Tornado web 框架

    一.简介 Tornado 是 FriendFeed 使用的可扩展的非阻塞式 web 服务器及其相关工具的开源版本.这个 Web 框架看起来有些像web.py 或者 Google 的 webapp,不过 ...

  3. 转-基于NodeJS的14款Web框架

    基于NodeJS的14款Web框架 2014-10-16 23:28 作者: NodeJSNet 来源: 本站 浏览: 1,399 次阅读 我要评论暂无评论 字号: 大 中 小 摘要: 在几年的时间里 ...

  4. 初步认识Node 之Web框架

    上一篇我们认识了Node是什么之后,这一篇我们主要了解的就是它的框架了.而它的框架又分为两大类,Web框架和全栈框架,接下来我们一个一个的来了解.    Web框架 Web框架可以细分为Web应用程序 ...

  5. 【原】Go语言及Web框架Beego环境无脑搭建

    本文涉及软件均以截至到2013年10月12日的最新版本为准 1. 相关软件准备: 1) go1.2rc1.windows-386.msi,对应32位windows系统安装使用 下载地址: https: ...

  6. 【译】什么是 web 框架?

    Web 应用框架,或者简单的说是“Web 框架”,其实是建立 web 应用的一种方式.从简单的博客系统到复杂的富 AJAX 应用,web 上每个页面都是通过写代码来生成的.我发现很多人都热衷于学习 w ...

  7. 冰冻三尺非一日之寒--web框架Django

    1.JS 正则    test   - 判断字符串是否符合规定的正则        rep = /\d+/;        rep.test("asdfoiklfasdf89asdfasdf ...

  8. web框架django初探

    Web框架介绍 一般会分为两部分:服务器程序和应用程序.服务器程序负责对socket服务器进行封装,并在请求到来时,对请求的各种数据进行整理.应用程序则负责具体的逻辑处理.为了方便应用程序的开发,就出 ...

  9. web前端基础知识-(六)web框架

    一.web框架本质 众所周知,对于所有的Web应用,本质上其实就是一个socket服务端,用户的浏览器其实就是一个socket客户端. #!/usr/bin/env python #coding:ut ...

随机推荐

  1. xamarin mac 之 资料

    中文社区 xamarin.form 30天学习计划

  2. python 发起HTTP请求

    因为微信公众号群发需要调用高级群发接口,其中涉及到python发起HTTP请求,现在将相关实现操作记录如下: 首先,HTTP请求分为GET和POST,如下所示: 首先是发起get 请求: # -*- ...

  3. MySQL动态添删改列字段

    动态增加列字段: ); 动态删除列字段: alter table TableName drop column field_id; 动态修改列字段: alter table TableName chan ...

  4. Angular - - ngApp、ngBind、ngBindHtml、ngNonBindable

    对于ng-系列的指令,每篇文章写2-5个吧,不然显得文章好短.... ngApp 使用这个指令自动启动一个AngularJS应用.ngApp指令指定了应用程序的根节点,通常会将ngApp放置在网页的根 ...

  5. thinkphp CURD 1

    二.ThinkPHP 3 读取数据    (重点)    对数据的读取 Read    $m=new Model('User');    $m=M('User'); select    $m-> ...

  6. 邮件报警shell脚本

    温馨提示  首先要安装postfix 或者 sendmail 等邮件服务器 1.Apache #!/bin/bash #apache.sh nc -w2 localhost 80 if[ $? -ne ...

  7. Java jsp 示例

    <!DOCTYPE html> <!-- [ published at 2015-11-13 12:30:50 ] --> <html> <head> ...

  8. Java多线程(学习篇)

    Java多线程:(学习篇) 1.什么是线程 2.线程状态 3.线程中断 4.线程交互 5.同步机制 6.锁机制 7.堵塞队列与堵塞栈 8.条件变量.原子量.线程池等 9.线性安全类和Callable与 ...

  9. Flash Socket通信的安全策略问题 843端口

    1.问题描述       将flash发布为html格式后,加载页面后,swf无法与服务器进行socket通信.Flash端显示的错误为:securityErrorHandler信息: [Securi ...

  10. Service介绍(MediaPlayer应用)

    一.Service介绍 Service类似于Windows中的服务,没有界面,只是在后台运行:而服务不能自己运行,而是需要调用Context.startService(Intent intent);或 ...