摘要:
“三层结构”是什么? “三层结构”一词中的“三层”是指:“表现层”、“中间业务层”、“数据访问层”。其中:n 表 现 层:位于最外层(最上层),离用户最近。用于显示数据和接收用户输入的数据,为用户提供一种交互式操作的界面。n 中间业务层:负责处理用户输入的信息,或者是将这些信息发送给数据访问层进行保存,或者是调用数据访问层中的函数再次读出这些数据。中间业务层也可以包括一些对“商业逻辑”描述代码在里面。n 数据访问层:仅实现对数据的保存和读取操作。数据访问,可以访问数据库系统、二进制文件、文本文档或是XML文档。 对依赖方向的研究将是本文的重点,数值返回方向基本上是没有变化的。在一个 如... 阅读全文
摘要:
前面从架构方面介绍了petshop怎样通过工厂模式可以轻松替换持久层实现。这次简单说一说petshop的表现层实现。 petshop的表现层使用了Web 页面(aspx)和用户控件(ascx)控件及自定义服务器控件等ASP.NET技术。 web页面(aspx)是用户和服务器交互的接口,也是用户除静态页面外唯一能够访问到的asp.net组件,其他像用户控件(ascx)和服务器控件只能在web页面(aspx)中使用,用户不能直接访问。用户控件类似于web页面,服务器控件与jsp的标签相似,可以在比较中进行学习。一.用户控件和服务器控件。1.用户控件。 用户控件与web页面极为相似,只不过是以asc 阅读全文
摘要:
关于一些Microsoft PetShop的来由、如何安装,所表现业务流程,数据库表结构等基本的信息的资料请大家参考下面文章http://msdn.microsoft.com/library/en-us/dnbda/html/bdasamppet.asp 另外建议先看一下这篇文章:http://msdn.microsoft.com/library/en-us/dnbda/html/petshop3x.asp本文将以设计和实现紧密结合的方式来分析,这也是我们广大实践型的软件开发人员的风格。先看一下设计图和具体实现VS.NET工程的表格。MSPetShop 3.0 系统结构图:从图中可以看到系统大 阅读全文
摘要:
petshop是C#实现的petstore,具体和技术无关的情况就不多介绍了。petshop3.0比petshop1和2都有了较大的改变,主要是设计方面的。看一下里面的8个工程和1个站点就知道它肯定分了不少层。一.概况介绍。Model:模型层,封装业务实体,一般和数据库模式对应。例如: public class AccountInfo { // Internal member variables private string _userId; private string _password; private string _email; private AddressInfo _addres 阅读全文
摘要:
数据库的移植通常会带来高额的代价。这一点我深有体会。代价的大小就要看程序的架构写的怎么样了. 去年把一个项目从MySQL移至到Oracle, 整个程序里里外外都做了修修补补,大概花了两个月。如果做到少修改,甚至不修改代码的前提下,对数据库的兼容无疑是一件非常好的事情,PetShop很好的做到了这一点要兼容多种数据库,首先要实现多态。SQLServerDAL和OracleDAL都实现了IDAL里所有接口的方法,实现了多态性。FactoryDAL用来创建DAL对象,public static PetShop.IDAL.IAccount Create(){ /// Look up the DAL . 阅读全文
摘要:
DataGrid的正反双向排序http://dev.csdn.net/develop/article/26/26817.shtm删除确认及Item颜色交替 http://dev.csdn.net/develop/article/26/26768.shtm DataGridDataGrid常见解决方案(三)--在DataGrid中选择确认删除多行复选框列表 http://dev.csdn.net/develop/article/26/26613.shtm 使用DataGrid动态绑定DropDownList http://dev.csdn.net/develop/article/26/26590 阅读全文
摘要:
ASP.Net中的DataGrid有内置分页功能, 但是它的默认的分页方式效率是很低的,特别是在数据量很大的时候,用它内置的分页功能几乎是不可能的事,因为它会把所有的数据从数据库读出来再进行分页, 这种只选取了一小部分而丢掉大部分的方法是不可去取的. 在最进的一个项目中因为一个管理页面要管理的数据量非常大,所以必须分页显示,并且不能用DataGrid的内置分页功能,于是自己实现分页. 下面介绍一下我在项目中用到的分页方法. 当然显示控件还是用DataGrid的, 因为数据绑定很方便^_^. 要保证不传输冗余的数据,那么必须在数据库中数据读取时实现分页, 数据... 阅读全文