[ASP.NET] : WebForm CRUD Pattern

 

前言 :

几乎所有的系统,都一定会有数据新增、修改、删除、查询的功能(CRUD)。
在ASP.NET里撰写CRUD有很多种的实作方式,例如使用GridView就可以简单实作完成。
这样的写作方式是把CRUD的职责,绑定在控件上。
当我们要做修改的时候,只能选择控件提供的方式,或是特殊方法才能满足客户的要求。

 

本篇文章描述,撰写CRUD的一种模式。
将CRUD的职责拆解成一个一个的页面,单一页面只要负责单一的职责。
拆解完的CRUD职责不是绑在控件而是绑在页面上,能比较方便的做修改来满足客户要求。

 

页面流程 :

先从整个页面流程看起,下图为整个模式使用的页面流程图。
一共分为六个页面,其职责为 :
-List : 显示数据列表。
-Detail : 显示单一数据内容。
-Insert : 新增一笔资料。
-Update : 更新一笔数据。
-Delete : 删除一笔数据。
-Notify : 通知使用者结果。

 

页面说明 :

List :

页面需求 : 无。
页面职责 : 显示多笔数据列表。
页面动作 :
1. 显示单一数据 : 选取单一数据,进入Detail页面。
2. 删除数据 : 选取多笔数据,进入Delete页面。
3. 新增资料 : 进入Insert页面。

 

Detail :

页面需求 : 单一资料。
页面职责 : 显示单一数据内容。
页面动作 :
1. 修改数据 : 取得显示单一数据,进入Update页面。
2. 删除数据 : 取得显示单一数据,进入Delete页面。
3. 新增资料 : 进入Insert页面。

 

Insert :

页面需求 : 无。
页面职责 : 输入单一数据内容。
页面动作 :
1. 新增资料 : 取得输入单一数据,新增至数据库,进入Notify页面。

 

Update :

页面需求 : 单一资料。
页面职责 : 显示及输入单一数据内容。
页面动作 :
1. 修改数据 :取得输入单一数据,修改至数据库,进入Notify页面。

 

Delete :

页面需求 : 多笔资料。
页面职责 : 显示多笔数据内容。
页面动作 :
1. 删除数据 : 取得显示多笔数据,删除至数据库,进入Notify页面。

 

Notify :

页面需求 : 讯息内容。
页面职责 : 显示讯息内容。
页面动作 :
1. 使用者确认 : 进入List页面。

 

实作说明 :

实作这个模式,有很多方式可以选择。
-将每个页面建立为一个ASP.NET Page页面。
-将每个页面建立为一个ASP.NET用户控件。
-使用ASP.NET MVC建立系统。
-...等等。

 

在开发CRUD的时候,还有一些功能例如数据验证或是采用Ajax等等,这些比较细项的功能就不赘述。
等待实做的时候,依照选择的方式,加上去即可。

 

后记 :

本模式主要是将CRUD职责分散,建立松散操作流程。
套用模式去开发系统,应该可以满足大部分的CRUD功能。

posted @ 2011-10-10 09:07  Clark159  阅读(491)  评论(0编辑  收藏  举报