posts - 185,  comments - 1071,  trackbacks - 43

       这段时间利用MonoRail进行WEB应用开发,但在编写VM时缺少了VS.NET IDE提供的特性感觉很不方便;于是就基于传统WebForm Page Controllers模块下实现Front Controller模式的开发框。

 

实现方法就是通过基础的Page Controller进行令命的转发,并执行具体的方法。

传统的Page ControllerWebForm设置:

<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="WebForm1.aspx.cs" Inherits="MVC_Test.WebForm1" %>

 

为了适应Front模式,Inherits统一指向一个命令处理的PageContrller:

<%@ Page Language="C#" AutoEventWireup="true"  Inherits="HFSoft.MVC.FormBase" %>

 

Page相关的Action Method可以通过CustomAttribute的方式进行一个映射:

    public class Roots:HFSoft.MVC.ControllerAdapter

    {

        [HFSoft.MVC.FormMapper("~/default.aspx")]

        public void Default()

        {

          

           

        }

    }

 

由于Action MethodWebForm存在隔离因此很多的特性都不能使用(如服务器控件,视图状态等);但UserControl作一下改变还是能够很好地应用在这种模式下。

 

 

为数据访问更灵活可以实现一些简单对象数据绑定功能,如:

Codes.OrderSearch search = BindObject<Codes.OrderSearch>("");

由于传统的HTML元素的Name设置不会因服务器控件的生成而改变,因此可以通过命名约束的方式方便实现数据绑定功能。

 

使用JQuery和框架实现一个简单的无刷新数据查询应用:


下载事例代码

posted on 2007-01-21 14:41 henry 阅读(462) 评论(2)  编辑 收藏 网摘 所属分类: HFSoft.MVC

FeedBack:
2007-01-22 12:19 | 找不到感觉的人[未注册用户]
想法不错,只是感觉不够灵活,所有页面都只能继承HFSoft.MVC.FormBase
  回复  引用    
#2楼[楼主]
2007-01-22 13:45 | henry      
@找不到感觉的人
其实这里的FormBase并不用于扩展,只是用于Action的转发;对于功能的实现是在Action Method进行编写。
以后会扩展出Action Method的CutomAttribute用于处理验证,日志等全局性的功能。
因为在用MonoRail有点不习惯,于是就写这样一个东西试下。
毕竟在编写页面有VS.2005提供帮助和C#2.0语法的支持。

  回复  引用  查看    



发表评论

昵称: [登录] [注册]

主页:

邮箱:(仅博主可见)

评论内容:

  登录  注册

[使用Ctrl+Enter键快速提交评论]

0 626093 YfcI3qauBEQ=



相关文章:

相关链接:
<2009年7月>
2829301234
567891011
12131415161718
19202122232425
2627282930311
2345678

与我联系

搜索

 

常用链接

留言簿

我参加的小组

我的标签

随笔分类

最新评论

60天内阅读排行