2004-11-28+ 认识Duwamish 7.0(3)错误处理
摘要:不做深入的研究,仅从表面认识一下duwamish中的错误处理。错误处理主要是通过systemframework的applicationassert和applicationlog完成。其中assert主要是给编程人员提供帮助,而log则用于日志记录。用户看到什么?用户将不会看到任何具体的错误信息,只是一个抱歉的页面。注意,由于duwamish的设定太多,我还没有搞清到底有几个记录事件错误的东东,为了...
阅读全文
posted @
2006-07-04 19:12
Notus|南色的风
阅读(413)
推荐(0) 编辑
2004-11-25+ 认识Duwamish 7.0 (2)数据访问
摘要:从数据访问的角度认识一下duwamish为了更灵活的数据访问,duwamish把中间业务层分成了businessfacade和businessroles两部分,关于这个的介绍大家可以看这个 -- 点击进入 -- 先说一句很傻的话,facade层内部并不是自动处理什么请求该转rules,什么请求该转dataaccess,而是都设定好了,并且仅有很少的数据操作要经过rules(是很傻吧,不过当时我第一...
阅读全文
posted @
2006-07-04 19:11
Notus|南色的风
阅读(315)
推荐(0) 编辑
2004-11-24+ 认识Duwamish 7.0 (1)概述
摘要:Duwamish Books Inc. 是一家在网上销售图书的虚拟公司。由于其模型是典型的网上购物实践中最为普遍的电子商务企业对客户 (B2C) 模式,它包括成员资格、帐户管理、购物车、搜索和结帐过程等基本功能。Duwamish 7.0 是由 MSDN 开发的通用 Duwamish 系列应用程序的功能性端口(完全使用 .NET 技术)。尽管示例本身是围绕虚拟网上书店建立的,但本示例主要关注的方面却...
阅读全文
posted @
2006-07-04 19:11
Notus|南色的风
阅读(286)
推荐(0) 编辑
2004-11-16 + 分页的讨论
摘要:为什么要分页?这个问题的答案似乎谁都知道,但是在这里还是要说一下:之所以需要分页,是因为我们“不想”把数据库里的“所有资料”“一次性”的“发送到client端让用户看”。注意加重的那几个词,许多人就是因为不知道这几个词所以才不会分页。分页的关键并不在于在client端将数据以“分页”的形式表现出来,而是如何将数据库里的资料按照当前页的索引分批的发送到client端。经常可以看到周围的人先用一个“s...
阅读全文
posted @
2006-07-03 18:45
Notus|南色的风
阅读(349)
推荐(0) 编辑
2004-11-8/12 + 连动下拉列表控件(更新版,可在页面放置多个)
摘要:这是个开源的控件。(已更新)点击这里进入 新版本 <--------------------------- 该版本可以在页面放置多个!!要付出的代价就是在页面重复注册几乎相同的js函数。每注册一次,就可以得到一次数据并用js数组的形式保存,这样就可以自由使用了如果不使用重复注册这种笨办法,那需要在一个js函数里完成数据的收集工作我觉得好象不可能完成这样的事,呵呵,因为一开始并不知道要在页面放多少...
阅读全文
posted @
2006-07-03 18:44
Notus|南色的风
阅读(344)
推荐(0) 编辑
2004-11-3 + 扩展Forms验证
摘要:1.使用Forms验证存储用户自定义信息Forms验证在内部的机制为把用户数据加密后保存在一个基于cookie的票据FormsAuthenticationTicket中,因为是经过特殊加密的,所以应该来说是比较安全的。而.net除了用这个票据存放自己的信息外,还留了一个地给用户自由支配,这就是现在要说的UserData。UserData可以用来存储string类型的信息,并且也享受Forms验证提...
阅读全文
posted @
2006-07-03 18:44
Notus|南色的风
阅读(208)
推荐(0) 编辑
2004-10-26+ 用户输入的安全问题
摘要:最近在看一本叫《asp.net安全性高级编程》,把一些感兴趣的东西写成笔记当到这里吧,今天这一篇主要是讲怎么防御注入攻击的。script injection 1.验证内容a.使用regularexpressionvalidator的正则表达式来限制用户输入2.筛选用户输入a.使用string.replace方法这个方法在petshop3.0中就有使用,就是把一些危险的符号(比如[]等)替换成安全的...
阅读全文
posted @
2006-07-03 18:43
Notus|南色的风
阅读(184)
推荐(0) 编辑
2004-10-24+ 自定义事件(事件处理+综合实例:模仿Repeater)
摘要:using System;using System.Web.UI;using System.ComponentModel;using System.Collections;using System.Data;using System.Web.UI.WebControls; namespace CC{/// /// 模仿Repeater的简单控件/// [ParseChildren(true), P...
阅读全文
posted @
2006-07-03 18:42
Notus|南色的风
阅读(368)
推荐(0) 编辑
2004-10-23 + 实现了跨页面多选的DataGrid
摘要:这是个开源的控件。点击这里进入 <------------详细的说明在里面,至于效果页面可以看这个http://www.vikosoft.net/mikeapp/SelectMultiPages.aspx我这个控件的效果同上,但是里面是完全不同的东西,跨页面选择的功能是由SuperGrid自动实现的,连checkbox都不需要你自己动手! 本来可以直接在这里给出来的,毕竟是我的主页啊,不过为了给论...
阅读全文
posted @
2006-07-03 18:42
Notus|南色的风
阅读(231)
推荐(0) 编辑
2004-10-21+ 自定义控件(支持模板+数据绑定)
摘要:接着上一篇,今天来做支持数据绑定的模板控件。 使用支持数据绑定控件的一般模式为private void Page_Load(object sender, System.EventArgs e){if(!this.IsPostBack){this.tm.DataSource=new string[]{"one","two"};this.tm.DataBind();}}先指定数据源,当确认数据源正确后...
阅读全文
posted @
2006-07-03 18:41
Notus|南色的风
阅读(737)
推荐(0) 编辑
2004-10-20 + 自定义控件(支持模板)
摘要:再说一下,这部分内容最好的教材就是我一开始推荐的那个视频材料。如果还有没有下的那就赶快去下~~指不定哪天微软的网站被攻击,倒闭了,就没的下了。不过话说回来,如果微软都倒闭了,那我们还学.net干嘛啊~~~不瞎扯了,下面转入正题。任何控件都可以包含子控件。一个控件支持模板,其实就是在往它里面加子控件。模板是用什么形式在控件内公开的呢?想一想,我们用一个一般的控件都可以直接用标记来指定属性,而模板也是...
阅读全文
posted @
2006-07-03 18:40
Notus|南色的风
阅读(466)
推荐(0) 编辑
2004-10-19+ 自定义控件(数据绑定)
摘要:数据绑定的概念是:通过提供一个DataSource属性来指定数据源,当控件呈现自己时,从数据源中抽取数据,并将这些数据作为控件的一部分进行呈现。使用的数据源一般是直接或间接实现了IEnumerable接口的数据,如ArrayList、IDataReader、DataTable等,这样可以方便的进行数据的查找。可以想象的到,在进行数据绑定时用的是遍历的办法。一般来说,控件还需要维护自己的状态,这就需...
阅读全文
posted @
2006-07-03 18:40
Notus|南色的风
阅读(404)
推荐(0) 编辑
2004-10-16+ 自定义控件(内部内容+状态管理
摘要:hello world !这个自定义控件和label差不多,都是加一个span后输出,标记里面的内容是怎么被读取的呢?如果你打开一个.aspx页面的跟踪,就会在控件树里发现一些叫LiteralControl的控件,这些控件其实就是那些没有runat=server的html标记,比如什么的,在处理的时候.net会把它们当成LiteralControl。很明显,我们在控件标记内的文本也是一个Liter...
阅读全文
posted @
2006-07-03 18:39
Notus|南色的风
阅读(283)
推荐(0) 编辑
2004-10-15+ 自定义控件 (呈现和处理回发)
摘要:推荐一个关于该方面知识的视频,是微软的网络讲座系列。如果对自定义控件不是很了解,可以看这个先 :) ---ASP.NET系列讲座三:Web 表单高级技巧---- 控件在页面的呈现靠Render方法完成。该方法接收一个HtmlTextWriter类型的参数,用来向页面输出HTML标记。因为我们要编写自己的控件,首先要做的就是改写Render方法。下面是一个简单的控件,用来向页面输出一行文字。publ...
阅读全文
posted @
2006-07-03 18:39
Notus|南色的风
阅读(354)
推荐(0) 编辑
2004-10-13 + 学习PetShop3.0(9)工厂的资料
摘要:1.ms介绍为了简化数据库访问类的使用,我们选择 GoF (译注:指 Erich Gamma 等著《设计模式》一书)概述的工厂设计模式,通过反射动态在运行时加载正确的数据访问对象。 工厂设计模式是这样实现的: 创建一个 C# 接口,其中对于数据库访问类必须公开的每个方法都要声明一个方法。 对于每一个要支持的数据库,都创建一个实现数据库特定代码的具体类,以执行接口也称“协定”中的每一项操作。 为了支...
阅读全文
posted @
2006-06-30 09:35
Notus|南色的风
阅读(284)
推荐(0) 编辑
2004-10-6 + 学习PetShop3.0(7)SimplePager
摘要:SimplePager是继承自Repeater的一个自定义控件,在整个站中应用很广,下面通过Category.aspx这个页面具体的研究研究:)先来看Category.aspx.cs,很奇怪吧,怎么没有和Load事件相关的方法呢?只有一个控制分页的PageChanged,而这个分页方法也有问题,每次都是获得缓存里的数据,然后改变的只CurrentPageIndex属性而已,并且该方法接受的参数竟然...
阅读全文
posted @
2006-06-30 09:35
Notus|南色的风
阅读(406)
推荐(0) 编辑
2004-10-3+ 学习PetShop3.0(6)实体模型
摘要:还记得用户注册时收集信息的方式吗?下面这几句://......AddressInfo address = addr.Address;//.....AccountInfo accountInfo = new AccountInfo(userId, password, email, address, language, favCategory, showFavorites, showBanners);...
阅读全文
posted @
2006-06-30 09:34
Notus|南色的风
阅读(312)
推荐(0) 编辑
2004-10-2+ 学习PetShop3.0(5)生成定单
摘要:点proceed to checkout后,就进入Checkout.aspx,确认后进入OrderBilling.aspx,在这里可以修改你的信息,完成后点continue,会出现个人信息的只读页面,最终确认后就进入OrderProcess.aspx,在这里是定单的详细情况,并且是只读的,到这里,定单被添加到数据库,购物完成。Checkout.aspx把数据从Session中取出来,然后显示到页面...
阅读全文
posted @
2006-06-30 09:33
Notus|南色的风
阅读(271)
推荐(0) 编辑
2004-10-2 + 学习PetShop3.0(4)购物车
摘要:终于到购物车了,在看这个之前应该已经明白了第三篇的那个模型,这样购物车基本也就明白了。来看一下ShoppingCart.aspx这个页。当你看好了一个宠物,比如可爱的Golden Retriever,嘿嘿,那就点add to cart按钮,这时就会跳到ShoppingCart.aspx,url里带了这个宠物的id号,根据该id号程序将该宠物放到cart里面。然后你可以再去挑别的宠物,比如一只猫(…...
阅读全文
posted @
2006-06-30 09:33
Notus|南色的风
阅读(266)
推荐(0) 编辑
2004-10-1+ 学习PetShop3.0(3)模仿购物车的简单可变类
摘要:今天晚上看了近两个小时的购物车,基本把原理弄明白了,先写一个类似结构的类来简单的演示一下Store类模仿购物车内的物品public class Store{private string name;private int id;private DateTime time; public Store(string name,int id,DateTime time){this.name=name;th...
阅读全文
posted @
2006-06-30 09:33
Notus|南色的风
阅读(381)
推荐(0) 编辑