.net三层结构初探分析第1/4页

所属分类: 网络编程 / ASP.NET 阅读数: 531
收藏 0 赞 0 分享
对于学习,我选择了ACCESS数据库+存储过程的方式,这里记录的是我个人的学习体会和笔记,与网上的可能有不同之处,观点也不可能全部相同。
为什么使用三层结构:
首先要明确,三层结构并不能使系统变快,实际上它会比起“单类结构”慢。但越来越多人使用三层结构开发,为啥呢?我在使用中,发现三层结构十分清晰,一个类,一个文件你该放在哪层就放哪层,不会象单类结构那样全部放到App_Data中,造成结构混乱。当然,使用三层结构的原因肯定不是那么肤浅,它对团队开发,系统可维护性有十分重要的意义。

三层结构是代码量增多,且代码多重复?
确实,三层代码要写很多很白痴,很简单的代码,比如MODEL这个实体类,如果你需要一个admin的实体,那么你需要写这样的代码:
复制代码 代码如下:

public class admin
{
private int? _id;
private string _sname;
private string _spassword;

public int? id
{
set { _id = value; }
get { return _id; }
}

public string sname
{
set { _sname = value; }
get { return _sname; }
}

public string spassword
{
set { _spassword = value; }
get { return _spassword; }
}
}

而有多个实体的话,你要再写这些白痴代码,为什么叫它白痴代码?因为这些代码你看着个表就可以写出来了。一次和老汤讨论中,介绍了一个软件,叫做“动软.Net代码生成器”,这些白痴代码让这个软件自己去生成吧!在这里也推荐大家用这个软件,可以减少很多代码量,BLL,DAL,WEB层的代码都可以去生成,但要完全符合使用的话,还需要自己做些修改。

下面讲讲我理解的三层,先上张图1:
WEB :界面层,其实就是一个网站。
BLL:逻辑处理层。
DAL:数据访问层
DBUtility:数据层基类
Model:实体类
Common:存放公用函数
图2

这里需要讲讲那个DBUtility这个层,你可以看到有4个文件:
1、DbHelperOleDb.cs:用于SQL语句
2、DbHelperOleDbP.cs:用于存储过程
3、DbHelperOleDbS.cs:用于具体实现,比如“根据条件判断是否存在”、“返回最大的ID”...
4、PubConstant.cs:数据库连接代码
更多精彩内容其他人还在看

Asp.net图片上传实现预览效果的简单代码

这篇文章介绍了Asp.net图片上传实现预览效果的简单代码,有需要的朋友可以参考一下
收藏 0 赞 0 分享

ASP.NET动态设置页面标题的方法详解

这篇文章介绍了ASP.NET动态设置页面标题的方法详解,有需要的朋友可以参考一下
收藏 0 赞 0 分享

ASP.NET中获取URL重写前的原始地址详解

在ASP.NET中,如果你使用了URL重写,通过HttpContext.Request获取到的是重写后的地址。如果这个地址要返回给客户端(比如Redirect),我们一般希望是重写前的友好地址。
收藏 0 赞 0 分享

.Net实现合并文件的具体方法

这篇文章介绍了.Net实现合并文件的具体方法,有需要的朋友可以参考一下
收藏 0 赞 0 分享

asp.net 初始化文本框的小例子

这篇文章介绍了asp.net 初始化文本框的小例子,有需要的朋友可以参考一下,希望对你有所帮助
收藏 0 赞 0 分享

用WPF实现屏幕文字提示的实现方法

本文介绍WPF应用程序实现在屏幕上显示一行或多行文字通知。它没有标题栏和最大化最小化等按钮,可以有半透明背景以使文字的显示更清晰,鼠标点击后提示消失。
收藏 0 赞 0 分享

.NET更新Xml中CDATA内容的方法实例

这篇文章介绍了.NET更新Xml中CDATA内容的方法实例,有需要的朋友可以参考一下
收藏 0 赞 0 分享

.NET中弹出对话框的方法汇总

下面是本人对常用对话框使用的汇总,希望对大家有所帮助,同时也欢迎大家补充。
收藏 0 赞 0 分享

ASP.NET动态生成静态页面的实例代码

生成静态页有很多好处,可以缓解服务器压力、方便搜索网站搜索等等,下面介绍一下生成静态页的实例代码,有需要的朋友可以参考一下
收藏 0 赞 0 分享

利用.net控件实现下拉导航菜单制作的具体方法

这篇文章介绍了利用.net控件实现下拉导航菜单制作的具体方法,有需要的朋友可以参考一下,希望对你有所帮助
收藏 0 赞 0 分享
查看更多