实现自己的MVC AJAX框架计划
最近看了一下设计自己框架的文章,所以也想自己去实现一个小框架,用于以后的项目中,只求方便,
需要参考各位前辈的代码,或者直接copy过来为我所用,哈哈,想想都开心。
不过,要写个好的框架肯定不容易,现在先把想要实现的东西记录下,将来慢慢实现吧。
01. 符号说明:√★☆●○◆◇△▲♂♀§ ̄―
| √ | 已完成的功能 |
| ★ | 需要测试的功能 |
√02. 网站路径采用 /page.cspx?方法名 或者 /page.cspx?aa.bb.cc.方法名 的形式
03. from提交表单action如果只包含命名空间和类名,不包含方法名,则以提交按钮名为方法名。
04. URL路由功能,可配置的url重写等
√05. ajax请求cs代码中的函数
√06. uc用户控件的单个请求
07. 实现post和get请求的方法和参数,参数支持可控类型,如int ?
√08. 支持QueryString, Form,Cookie等传递参数
√09. 实现ActionHandler的处理,程序入口继承IHttpHandlerFactory的实现
√10. 正常页面可以处理,ajax可以处理,cs代码可以处理
√11. 方法返回值:html,json,自定义对象(重写tostring,或自定义output之类的方法)
√12. Attribute属性的支持
★13. Exception对象的整合,如ExceptionHelper.Throw404Exception等
√14. 尽量使用 internal 修饰符,对外开放最小的接口
★15. 反射的应用及优化,可以自定义ReflectionHelper
★16. 身份验证的支持
17. 实现缓存功能
18. 使用拦截器处理所有异常信息和页面跳转
看别人实现自己的框架,感觉自己的知识点还有很多欠缺啊。
实现自己的MVC AJAX框架计划的更多相关文章
- ASP.NET MVC+EF框架+EasyUI实现权限管理系列(22)-为用户设置角色
ASP.NET MVC+EF框架+EasyUI实现权限管系列 (开篇) (1):框架搭建 (2):数据库访问层的设计Demo (3):面向接口编程 (4 ):业务逻辑层的封装 ...
- 对Spring.Net+NHibenate+Asp.Net Mvc+Easyui框架的个人认识
对Spring.Net+NHibenate+Asp.Net Mvc+Easyui框架的个人认识 初次接触Spring.Net+NHibenate+Asp.Net Mvc+Easyui框架,查阅了相 ...
- hibernate+spring+mvc+Easyui框架模式下使用grid++report的总结
最近刚开始接触hibernate+spring+mvc+Easyui框架,也是刚开通了博客,希望能记录一下自己实践出来的东西,让其他人少走弯路. 转让正题,以个人浅薄的认识hibernate对于开发人 ...
- ASP.NET MVC+EF框架+EasyUI实现权限管理系列(17)-注册用户功能的细节处理(各种验证)
原文:ASP.NET MVC+EF框架+EasyUI实现权限管理系列(17)-注册用户功能的细节处理(各种验证) ASP.NET MVC+EF框架+EasyUI实现权限管系列 (开篇) (1):框 ...
- Spring.Net+NHibenate+Asp.Net Mvc+Easyui框架
Spring.Net+NHibenate+Asp.Net Mvc+Easyui框架 初次接触Spring.Net+NHibenate+Asp.Net Mvc+Easyui框架,查阅了相关资料,了解了框 ...
- Spring MVC 学习总结(十)——Spring+Spring MVC+MyBatis框架集成(IntelliJ IDEA SSM集成)
与SSH(Struts/Spring/Hibernate/)一样,Spring+SpringMVC+MyBatis也有一个简称SSM,Spring实现业务对象管理,Spring MVC负责请求的转发和 ...
- loadrunner测试ajax框架
loadrunner测试ajax框架的系统时,录制回放都没有报错,但是回放后系统中没有产生数据,解决方法 loadrunnerajax框架测试脚本headerajax [问题描述]用loadrunne ...
- 感恩回馈,新鲜出炉的《ASP.NET MVC 5框架揭秘》免费赠送
上次针对<ASP.NET Web API 2框架揭秘>举办了一次评论赠书活动,很多人问我相同的活动要不要针对<ASP.NET MVC 5框架揭秘>(阅读样章)再来一次,为此我向 ...
- 《ASP.NET MVC 5框架揭秘》样章发布
今天算是新作<ASP.NET MVC 5框架揭秘>正式上架销售的日子(目前本书在互动网已经到货),为了让更多适合的朋友们能够阅读此书,同时也避免让不适合的读者误买此书,特将此书的样章发布出 ...
随机推荐
- date clock
设置Linux系统时间:date -s "2017-06-22 15:44:30" 自定义时间显示格式:date "+%Y-%m-%d %H:%M:%S" 查 ...
- Python Opencv安装环境搭建
https://blog.csdn.net/weifenglin1997/article/details/78723544
- TypeError: format string
先来看一段Python代码: class Negate: def __init__(self, val): self.val = -val def __repr__(self): return str ...
- java基础知识—循环结构
1.while 循环 语法: while(循环操作){ 循环操作: } 特点:先判断,再执行:2. == : 用于数字比较 比较的是地址 equals: 用于字符串比较 比较的是字符 3.do-whi ...
- cocos大量对象使用动作注意事项
,,} for i,v in ipairs(area) do if gameResult == v then ]) do local scale_1 = cc.ScaleTo:create(0.05, ...
- Python基础学习---比较运算符
比较运算符 注意: 不同类型数据之间只能== != ,不能比较大小> >= < <= 比较运算符返回一个bool值 比较运算符可以链式运算 4&g ...
- Python基础学习---位运算符
<< 左移,每移动1位,相当于乘以2 例如:32<<2 等价于:32*4 ==128 >> 右移,每移动1位,相当于除以2 例如: ...
- 关于synchronized的同步操作
一般有两种方法 同步方法和同步代码块 假设P1.P2是同一个类的不同对象,这个类中定义了以下几种情况的同步块或同步方法,P1.P2就都可以调用它们. 1. 把synchronized当作函数修饰符时, ...
- MyBatis通过Mapper动态代理来实现curd操作
MyBatis官方推荐使用mapper代理方法开发mapper接口,程序员不需要编写mapper实现类,使用mapper代理方法时,输入参数可以使用pojo包装对象或者map对象,保证dao的通用性 ...
- 文件传输协议(FTP)
文件传输协议(FTP)用于用户在两台主机之间进行远距离的文件传输,并保证传输的可靠性. FTP采用客户机/服务器的方式,由FTP服务器和FTP客户机两部分组成. FTP服务器中以目录结构保存着各种文件 ...