Duwamish 7 初探——数据流程

时间:2010-03-06 20:03:33  来源:第二电脑网  作者:第二电脑网

  第二电脑网导读:/>  btw 在MSDN.NET中有其结构与流程详解,本人在此基础上总结心得,并对其中不甚明了之处做一补充,若有疑问可查阅之。      Duwamish的若干个核心文件:      SystemFrameworkApplicationAssert.cs // 验证数据合法性   SystemFrameworkApplicationConfiguration.cs // 定义读写配置的框架...
  正文:Duwamish 7是微软的一个基于ASP/ target=_blank class=infotextkey>asp.NET的分布式应用程序范例。
  
  由于工作上的原因,本人不得不对其研究一二。有所心得,不敢独乐,故于此与众位分享之。一并探讨ASP.NET,万望众位达人不吝赐教,。
  
  btw 在MSDN.NET中有其结构与流程详解,本人在此基础上总结心得,并对其中不甚明了之处做一补充,若有疑问可查阅之。
  
  Duwamish的若干个核心文件:
  
  SystemFrameworkApplicationAssert.cs // 验证数据合法性
  SystemFrameworkApplicationConfiguration.cs // 定义读写配置的框架
  CommonDuwamishConfiguration.cs // 读写配置(通过ApplicationConfiguration)
  
  以上是整个应用程序的框架核心,还有一个ApplicationLog.cs,作用和Configuration类似。
  
  Webweb.config // 应用程序配置文件
  WebPageBase.cs // Web窗体页基类,供aspx派生,其中定义了需要页面间共享的数据(如用户、订单信息,用属性定义)
  WebModuleBase.cs // Web控件基类,供Module*.ascx派生,其中定义了所有模块所需要的应用程序路径和其他共享信息(用属性定义)
  Duwamish 7是一个很小的应用(相对于更多的商业应用),但是微软仍然将它的结构、框架、层次定义得十分复杂,使人不得不对其产生由衷的敬仰: P
  
  复杂么?说起来也并非难以掌握。
  
  用户界面——Web
  业务外观——BusinessFacade
  业务规则——BusinessRules
  数据访问——DataAccess
  
  如此而已,一个严谨、清晰、易于维护的Web应用大都如此。我们以一个用户登录过程为例探究其数据流程。
  
  WebSecurelogon.aspx接受用户登录表单提交,触发Logon.LogonButton_Click事件(WebSecurelogon.aspx.cs中204行)
  
  WebSecurelogon.aspx.cs中243行:
  
  custData = (new CustomerSystem()).GetCustomerByEmail(LogonEmailTextBox.Text, LogonPasswordTextBox.Text);
  
  BusinessFacade中CustomerSystem类(BusinessFacadeCustomerSystem.cs)实现“用户账号存取接口”逻辑
  
  其中BusinessFacade.GetCustomerByEmail()(BusinessFacadeCustomerSystem.cs中45行)定义“通过Email读取用户信息”接口
  
  BusinessFacadeCustomerSystem.cs中58行:
  
  using (DataAccess.Customers customersDataAccess = new DataAccess.Customers())
  {
   dataSet = customersDataAccess.LoadCustomerByEmail(emailAddress);
  }
  
  DataAccess中Customers类(DataAccessCustomers.cs)实现“用户账号数据访问”逻辑
  
  其中Customers.LoadCustomerByEmail()(DataAccessCustomers.cs中217行)定义“通过Email读取用户信息”接口——通过访问SQL Server存储过程“GetCustomerByEmail”
  
  DataAccessCustomers.cs中227行:
  
  dsCommand.SelectCommand = GetLoadCommand();
  
  DataAccess.Customers.GetLoadCommand()初始化存储过程及参数并返回其接口(DataAccessCustomers.cs中112行)
  
  DataAccessCustomers.cs中119行:
  
  loadCommand = new SqlCommand("GetCustomerByEmail",new SqlConnection (DuwamishConfiguration.ConnectionString));
  
  初始化存储过程。其数据库连接由Common.DuwamishConfiguration中ConnectionString属性获得。
  
  Common中DuwamishConfiguration类(CommonDuwamishConfiguration.cs)定义了应用程序配置信息的访问接口(通过访问类的属性)
  
  其中DuwamishConfiguration.ConnetionString属性提供“数据库连接字符串访问”接口
  
  CommonDuwamishConfiguration.cs中151行:
  
  public static String ConnectionString

"Duwamish 7 初探——数据流程"由第二电脑网原创提供,转载请注明:http://www.002pc.com/master/College/Programming/aspnet/13094.html


关键字:

关于《Duwamish 7 初探——数据流程》文章的评论

站内搜索: 高级搜索

热门搜索: Windows style 系统 tr IP QQ CPU 安装 function 注册 if td