#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. javascript--hasOwnProperty()+isPrototypeof()+in方法

    1.hasOwnProperty():用来检测对象中是否包含给出的函数属性或者对象,但是无法检测出对象的原型链中是否包含给出的属性或对象--该属性或者对象必须在函数内部被声明 2.isPrototyp ...

  2. 1.4.2.1. FILES(Core Data 应用程序实践指南)

    #define debug 1 #pragma mark - FILES NSString *storeFilename = @"Grocery-Dude.sqlite";

  3. C++ STL算法系列1---unique , unique_copy函数

     一.unique函数 类属性算法unique的作用是从输入序列中“删除”所有相邻的重复元素. 该算法删除相邻的重复元素,然后重新排列输入范围内的元素,并且返回一个迭代器(容器的长度没变,只是元素顺序 ...

  4. jQuery插件Flot实战Demo

    <!DOCTYPE html><html lang="en"><head>    <meta charset="UTF-8&qu ...

  5. JQuery动画animate的stop方法使用详解

    JQuery动画animate的stop方法使用详解 animate语法: 复制代码 代码如下: $(selector).animate(styles,speed,easing,callback) 复 ...

  6. 数组(Array)资源

    上面的程序中在Java代码中定义了两个数组,Android并不推荐在Java代码中定义数组,因为Androd允许通过资源文件来定义数组资源. Android采用位于/res/values目录下的arr ...

  7. TortoiseSVN使用简介

    TortoiseSVN使用简介 2009-04-24 来源: dev.idv.tw 1.安装及下载client 端 2.什么是SVN(Subversion)? 3.为甚么要用SVN? 4.怎么样在Wi ...

  8. 用NetStream的appendBytes播放FLV

    public class MiniStream extends Sprite { private var _buffer:ByteArray = new ByteArray(); private va ...

  9. Flex 开发框架汇总

    1.现有成熟Flex框架   Cairngorm (Adobe Open Source) - MVC framework   PureMVC (Open Source) - MVC framework ...

  10. 基于Casperjs的网页抓取技术【抓取豆瓣信息网络爬虫实战示例】

    CasperJS is a navigation scripting & testing utility for the PhantomJS (WebKit) and SlimerJS (Ge ...