Web项目为Duwamish系统的业务展示层,为客户提供对应用程序的访问界面。
1.PageBase.cs为每个页面的基类,主要是获取页面的URL信息,从Session中获取或设置Customer和Cart信息,另外重写了Web.UI.Page的OnError()事件。捕获页面错误,调用ApplicationLog.WriteError()方法写入日志。
2.ModualBase.cs为系统中每个用户控件的基类,本身继承自UserControl,功能基本同PageBase.cs,用到了Session保存Customer与Cart信息.
3.Cart.cs(购物车)类中封装了所有对购物车的方法与属性。Cart类实现了ISerializable接口对OrderData对象进行序列化与反序列化。
4.Default.aspx页面没有具体很多代码,只是控件的组合。Default.aspx页面的EnableSessionState=true
5.BannerModule.ascx中所有控件的EnableViewState均设置为False,其实也可以直接在控件上设置EnableViewState=false,用户控件没有
EnableSessionState属性.BannerModule数据几乎很少改动,所以启用了缓存,在控件顶部加入代码:
不明白,在BannerModule.ascx,CategoriesModule.ascx有对Cache的操作,在这两个地方为什么不需要进行判断?
另外,在此设置的Enable或Disable页面Cache信息对BannerModule和CategoriesModule中的Cache操作与设置有没有影响??