#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. 创业类网站建设日志1——搭建服务器svn以及前端开发环境

    1.需要在linux环境的服务器下搭建node和npm还有Grunt,所以先需要一个叫putty的工具连接服务器命令行终端 2.双击putty工具,在HostName一栏输入项目服务器地址:172.1 ...

  2. spark 中的RDD编程 -以下基于Java api

    1.RDD介绍:     RDD,弹性分布式数据集,即分布式的元素集合.在spark中,对所有数据的操作不外乎是创建RDD.转化已有的RDD以及调用RDD操作进行求值.在这一切的背后,Spark会自动 ...

  3. C# Winform窗口之间传值的多种方法浅析(转)

    摘要http://www.jb51.net/article/63837.htm 这篇文章主要介绍了C# Winform窗口之间传值的多种方法浅析,本文起讲解了通过构造器传值.通过属性传递.通过事件携带 ...

  4. ios自定义UIButton内部空间Rect

  5. Yii 1.0 基础

    骨架搭建 1.下载2.windows 创建PHP环境变量,找到php.exe的目录D:\wamp\bin\php\php5.3.5,右键我的电脑,属性\高级设置,path最后添加 ;D:\wamp\b ...

  6. PHP格式化字符串函数 sprintf()

    定义和用法 sprintf() 函数把格式化的字符串写入一个变量中. 语法 sprintf(format,arg1,arg2,arg++) 参数 描述 format 必需.转换格式. arg1 必需. ...

  7. 用php进行md5解密的源码,亲测可用

    <?php $md5 = "c1c95b382230eb9e27a60c4baceb5f2e"; $uid = "hhp-ImZRY"; $token = ...

  8. CF448C [Painting Fence]递归分治

    题目链接:http://codeforces.com/problemset/problem/448/C 题目大意:用宽度为1的刷子刷墙,墙是一长条一长条并在一起的.梳子可以一横或一竖一刷到底.求刷完整 ...

  9. list_删除元素

    项目遇到了题目所述的问题,还是折腾了一会... 现在总结一下: 这里写一个测试小程序: List<Integer> ints = new ArrayList<Integer>( ...

  10. 关于bootstrap 在MVC里 模态框里加载iframe页面做编辑的时候

    前台代码 <div class="modal fade" id="myModal" tabindex="-1" role=" ...