面,若有错,请按照编译器指出的错误的顺序逐个排错,依次解决各种错误问题。
四.实验题
在以上创建的ASP.NET网站“CSharpStudy”的基础上,添加一个新表“news”用于保存新闻记录,对login.aspx登录页面做必要修改后,然后继续通过引用项目的方式完成基于简单三层架构的“CSharpStudy”网站的其它功能页面,其它各页面的效果图如图1-7、1-8、1-9、1-10、1-11、1-12、1-13所示。大体上的功能详见实验1中关于功能的描述。
五.实验体会:
24
实验3 .NET三层架构高级编程(2)
一.实验目的
1.熟悉和掌握ASP.NET网站开发中的操作步骤。
2.熟悉和掌握基于.NET复杂三层架构的网站的开发方法和步骤。
二.实验内容
设计并实现一个基于复杂三层架构的标题为“C#学习网”的网站的登录页面login.aspx,效果图如3-1所示(与图2-1相同),若输入正确的用户名和密码,单击“登录”按钮,则提示“登录失败,无此用户名或密码不正确!”,若输入不正确的用户名和密码,单击“登录”按钮,则提示“登录成功!”。
图3-1 登录页面效果
三.实验步骤
1.剪切并保存图片素材
在设计页面之前,首先根据效果图分析得到框架结构代码,并利用PhotoShop工具,剪切下需要的图片,并保存(也可以直接使用实验1中已准备好的图片素材)。 2.创建ASP.NET Web应用程序
启动Visual Studio 2008,创建一个名为“CSharpStudy”的ASP.NET Web应用程序,并将自动生成的项目的名称由“CSharpStudy”改为“Web”。 3.添加图片素材
在创建的Web项目新建一个名为images的文件夹,通过添加现有项的方法将步骤中已准备好的图片素材添加到网站的images文件中。 4.添加各个类库项目
右单击“CSharpStudy”解决方案,打开快捷菜单,选择“添加”菜单项,在级联菜单中选择“新建项目”,打开“添加新项目”对话框(如图2-4所示),先单击左侧的“项目类型”视图中的“Visual C#”节点,然后在右侧的“模板”列表中选择“类库”模板,再在名称输入框中输入类库项目名称“BLL”,位置输入框中的内容默认即可。最后单击“确定”按钮,就此完成类库项目“BLL”的项目的创建,在“解决方案资源管理器”中双击“BLL”项目,可看到该项目中有自动生成的类文件Class1.cs,将其删除。
25
使用同上的方法,再分别添加名为IDAL、DALFactory、OleDbDAL、SQLDAL、DBUtility的类库项目,并分别删除各类库项目自动生成的类文件Class1.cs。 5.创建数据库和数据库表
按照实验1中所述的方法在Web项目中创建Server SQL 2005 Express数据库“webdevelop”和数据库表userlogin表。
6.在配置文件中添加数据库连接字符串
在Web项目的Web.Config文件中的
AttachDbFilename=|DataDirectory|webdevelop.mdf;Integrated Security=True;User Instance=True;\/> Data Source=|DataDirectory|webdevelop.mdb; Persist Security Info=False;\/> 7.在各项目中添加各个类文件 (1)为DBUtility项目添加类文件 右单击“DBUtility”项目,在打开的快捷菜单中,单击“添加”菜单项,在级联菜单中单击选择 “新建项”菜单项,打开“添加新项”对话框(如图2-5所示),先单击左侧的“类别”视图中的“代码”节点,再在右侧的“模板”列表框中单击选择“类”模板,再在名称输入框中输入类文件名“OleDbHelper.cs”,最后单击“添加”按钮,完成DBUtility项目中OleDbHelper.cs的创建,再DBUtility项目中添加另一类文件SQLDbHelper.cs。 首先在OleDbHelper.cs文件的开始部分添加以下命名空间的引用: using System.Configuration; using System.Data; using System.Data.OleDb; using System.Web; 然后,将OleDbHelper类的访问属性改为“public”,将命名空间改为“CSharpStudy.DBUtility”, 再添加OLEDBDAAB代码,最后OleDbHelper.cs文件的完整内容如下: using System; using System.Collections.Generic; using System.Text; using System.Configuration; using System.Data; using System.Data.OleDb; using System.Web; namespace CSharpStudy.DBUtility { public class OleDbHelper { public OleDbHelper(){ } /// 26 /// 返回数据库连接字符串 /// /// public static String GetSqlConnection() { String conn = ConfigurationSettings.AppSettings[\ return conn; } /// /// 获得参数对象 /// /// /// /// /// /// /// public static OleDbParameter GetParameter(String paramName, OleDbType paramType, Int32 paramSize, String ColName, Object paramValue) { OleDbParameter param = new OleDbParameter(paramName, paramType, paramSize, ColName); param.Value = paramValue; return param; } /// /// /// /// /// /// public static OleDbParameter GetParameter(String paramName, OleDbType paramType, Int32 paramSize, String ColName) { OleDbParameter param = new OleDbParameter(paramName, paramType, paramSize, ColName); return param; } /// 27

