05 2009 档案
摘要: 观察我们的项目,实体类有UserInfo和MessageInfo两个类。在UserInfo类中有两个属性:Username和Password,显然,这两个属性都不应为空。在MessageInfo类中有Contents,PostTime和PostUsername三个属性。其中Contents不能为空,而PostTime取当前时间(Time.Now)即可,PostUsername也不应为空。对数据进行...阅读全文
摘要: 上一章,我们建立了模拟服务项目对表现层提供服务,表现层直接依赖于服务层的具体类,如图:(以下所有图中,底色为红色的代表类,蓝色代表接口)这样带来的缺点就是,当模拟服务对象发生变化的时候,会影响到表现层。我们知道,三层架构的目的之一就是当一层发生变化的时候尽量不会影响到其他的层。因此,我们要对我们的项目做一些调整,使表现层和服务层解耦,同时也为以后将模拟服务对象替换为真正的服务对象时作准备。关于接口...阅读全文
摘要: 上一章我们把静态的页面转化成了动态网站,接下来,我们将给动态网站添加业务逻辑。项目进行到这一步,不知道大家有没有认识到这种自顶向下构建项目所带来的优势。首先,我们每一步得到的版本都是可以直接运行的,我们可以在任何时候都直观的观察到项目的结果,从而对项目做出调整。其次,我们能够直观的感受到项目的进度。最后,我们每次的修改都不涉及到更低层次的内容,可以放心的修改。观察我们的项目,现有的主要功能有两种,...阅读全文
摘要: 上一章我们确定了需求,并建立了若干静态页面,基本消除了与客户认识的差异。这一章,我们把静态页面转化为表现层(或者说是视图,MVC模式中的View),也就是.aspx文件。基本上我们可以把相同的框架做成母版页,例如:在input type="text"标签上添加runat="server"属性,把客户端控件替换成服务器端控件等等工作,完成静态页面到静态的动态网站的转化-_-b。当然,MVC模式的就省...阅读全文
