摘要: 五 PetShop之业务逻辑层设计 业务逻辑层(Business Logic Layer)无疑是系统架构中体现核心价值的部分。它的关注点主要集中在业务规则的制定、业务流程的实现等与业务需求有关的系统设计,也即是说它是与系统所应对的领域(Domain)逻辑有关,很多时候,我们也将业务逻辑层称为领域层。例如Martin Fowler在《Patterns of Enterprise Applicati... 阅读全文
posted @ 2008-06-22 14:22 微星 阅读(222) 评论(0) 推荐(0) 编辑
摘要: 代码中,InsertUser()方法就是负责用户的创建,而在之前则需要判断创建的用户是否已经存在。InsertUser()方法的定义如下: private static bool InsertUser(OracleTransaction transaction, int userId, string email, string password, int passFormat, string pa... 阅读全文
posted @ 2008-06-22 14:21 微星 阅读(176) 评论(0) 推荐(0) 编辑
摘要: 6.4 ASP.NET 2.0新特性 由于PetShop 4.0是基于.NET Framework 2.0平台开发的电子商务系统,因而它在表示层也引入了许多ASP.NET 2.0的新特性,例如MemberShip、Profile、Master Page、登录控件等特性。接下来,我将结合PetShop 4.0的设计分别介绍它们的实现。 6.4.1 Profile特性 Profile提供的功能是针... 阅读全文
posted @ 2008-06-22 14:20 微星 阅读(207) 评论(0) 推荐(0) 编辑
摘要: 六 PetShop之表示层设计 表示层(Presentation Layer)的设计可以给系统客户最直接的体验和最十足的信心。正如人与人的相交相识一样,初次见面的感觉总是永难忘怀的。一件交付给客户使用的产品,如果在用户界面(User Interface,UI)上缺乏吸引人的特色,界面不友好,操作不够体贴,即使这件产品性能非常优异,架构设计合理,业务逻辑都满足了客户的需求,却仍然难以讨得客户的欢心。... 阅读全文
posted @ 2008-06-22 14:19 微星 阅读(184) 评论(0) 推荐(0) 编辑
摘要: 在VS2005中默认的源代码控制软件是Team Foundation,但是作为个人,谁又会在自己的机器上安装VSTS呢。据说正常安装需要6个小时。且不用说一般二般的人还根本装不上。还是使用使用VSS2005吧。VSS2005增加了许多新的特性,比如支持Unicode,支持Http访问等等。 但是在VS2005中如果选中Solution,然后选择快捷菜单中的“Add to Source Con... 阅读全文
posted @ 2008-06-16 23:27 微星 阅读(328) 评论(0) 推荐(0) 编辑
摘要: petshop4 MSDTC 不可用解决 使用petshop4 check out的时候,跟踪到在PetShop.SQLServerDAL.Inventory.TakeStock函数中出现MSDTC不可用,只要在windows控制面版-->管理工具-->服务-->Distributed Transaction Coordinator-->属性-->启动即可 或者 运行命令: ne... 阅读全文
posted @ 2008-06-13 17:06 微星 阅读(345) 评论(0) 推荐(0) 编辑
摘要: 有个时间要在gridview中显示,但是保持着数据库中的是标准时间,很长,而且只需要显示日期,就想要格式化字符串,可是设置了DataFormatString就是不起作用,后来一查,原来要设置"行为"中HtmlEncode = false DataFormatString="{0:格式字符串}" 在DataFormatString 中的 {0} 表示数据本身,而在冒号后面的格式字符串代表所们... 阅读全文
posted @ 2008-05-08 17:48 微星 阅读(259) 评论(0) 推荐(0) 编辑
摘要: GridView的高级用法: 在开发的过程中,遇到了GridView的自定义使用,可以自定义编辑、更新、删除等操作。 1、自定义选择数据: SqlDataSource1.ConnectionString=SysPub.GetDataConnString;//设置数据源连接字符串 SqlDataSource1.SelectParameters[0].D... 阅读全文
posted @ 2008-05-07 17:34 微星 阅读(1092) 评论(0) 推荐(0) 编辑
摘要: 我使用网上盛传的 拉模式 方法加载报表。打印时出现错误提示:出现通信错误。将停止打印 我使用的数据源是SQL server 的存储过程。 解决办法: 将水晶报表邦定在Page_Init里 private void Page_Init(object sender, EventArgs e) { CR_Bind(); } private void buttoni... 阅读全文
posted @ 2008-04-22 18:11 微星 阅读(2247) 评论(0) 推荐(0) 编辑
摘要: 前几日发现水晶报表设计器中设置为横向打印的时候,出来的打印出口中默认选项仍未纵向,遍寻网络无果,只有人说是水晶报表的Bug,只好自己想办法。使用Reflector反编译crystal report后,在CrystalDecisions.Web.ViewerToolbar中发现了如下代码: if (info1 != null) { ... 阅读全文
posted @ 2008-04-22 18:00 微星 阅读(4154) 评论(0) 推荐(0) 编辑