酒店管理系统-ASP.NET问题描述某酒店为提高管理效率,采用全新的计算机网络和信息管理系统,对基础设施和业务流程进行智能化控制。“基础设施”用于对客房类型、客房价格、客房信息等进行初始化设置。1、“客房类型设置”用于设置客房的分类信息,包括分类名称、分类价格、是否加床、加床价格、备注等。2、“客房信息设置”用于设置客房的初始信息,包括房间号、房间所属类型、房间状态、床数、客人数、描述等。在这一阶段,我们将完成客房类型管理、客房管理功能。问题分析-1•客房类型管理–以表格的形式展示所有客房类型信息–实现对类型信息的增、删、改、查操作–点击删除按钮时,出现删除确认模式对话框–点击编辑按钮时,跳转到编辑页面进行信息编辑,编辑成功后自动返回信息查看页面–当鼠标移到列表的某一行记录上出现光棒效果问题分析-2•客房类型查看页面问题分析-3•客房类型编辑页面问题分析-4•客房类型新增页面问题分析-5•客房管理–客房管理实现与客房类型管理相似的功能,并用分页的方式查看客房信息–将客房信息与指定的客房类型关联问题分析-6•客房信息查看页面问题分析-7•客房信息编辑页面问题分析-8•客房信息新增页面问题分析-8•数据库设计难点分析-1•实现光棒效果、删除确认功能protectedvoidgvRoom_RowDataBound(objectsender,GridViewRowEventArgse){if(e.Row.RowType==DataControlRowType.DataRow){//设置行颜色e.Row.Attributes.Add(onmouseover,currentcolor=this.style.backgroundColor;this.style.backgroundColor='#ff9900');//添加自定义属性,当鼠标移走时还原该行的背景色e.Row.Attributes.Add(onmouseout,this.style.backgroundColor=currentcolor);//添加删除确认ImageButtonimgbtn=(ImageButton)e.Row.FindControl(imgbtnDelete);imgbtn.Attributes.Add(“onclick”,“returnconfirm(‘您确认要删除吗?'););}}该事件在GridView控件中将数据绑定到数据行时发生数据行类型检测实现光棒效果实现删除确认难点分析-2•实现删除、编辑功能protectedvoidgvRoom_RowCommand(objectsender,GridViewCommandEventArgse){stringcmd=e.CommandName;introomId=Convert.ToInt32(e.CommandArgument);if(cmd==De){RoomManager.DeleteRoomByRoomId(roomId);}elseif(cmd==Ed){Page.Server.Transfer(EditRoom.aspx?roomid=+roomId.ToString());}BindRoom();}该事件在单击GridView控件中的按钮时发生获取命令名称获取命令参数阶段划分•第一阶段讲解和分析客房类型管理、客房管理需求•第二阶段创建数据库•第三阶段搭建HotelManager三层结构基本框架•第四阶段根据客房类型、客房数据表编写实体类•第五阶段根据需求编辑Web页面•第六阶段编写客房类型信息数据访问层•第七阶段编写客房信息数据访问层•第八阶段实现业务逻辑层•第九阶段实现表示层数据绑定第一阶段•第一阶段–学生首先阅读项目案例需求和实现步骤–理解需求并分析第二阶段•第二阶段–创建数据库•要求学生自己动手操作第二阶段结果演示•第二阶段操作的结果第三阶段•第三阶段–搭建HotelManager三层结构基本框架•要求学生自己动手操作,教师巡视,解答学生提出的问题第三阶段结果演示•第三阶段操作结果第四阶段•第四阶段–根据客房类型、客房数据表编写实体类•要求学生自己动手编写第五阶段•第五阶段–根据需求编辑Web页面•要求学生自己动手编辑,教师巡视,解答学生提出的问题阶段检查•针对第五阶段抽查学生的编码结果•抽查学生编写的完整代码,要求学生上台讲解,并演示运行结果•教师给出点评第五阶段结果演示•Web页面编辑结果演示示例:Web页面编辑结果第六阶段•第六阶段–编写通用数据访问类(DBHelper)–编写客房类型信息数据访问层•要求学生自己动手编写第六阶段标准代码演示•客房类型信息数据访问层实现包括如下功能:–得到所有客房类型信息–通过客房类型ID得到客房类型名称–通过客房类型ID得到客房类型信息–更新客房类型信息–删除客房类型信息–新增客房类型信息–通过类型名称得到类型ID演示示例:客房类型数据访问层实现代码第七阶段•第七阶段–编写客房信息数据访问层•要求学生自己动手编写第七阶段标准代码演示•客房信息数据访问层实现功能如下:–得到客房信息列表–通过客房ID得到客房信息–通过客房ID删除客房信息–修改客房信息–通过房间号得到客房ID–新增客房信息演示示例:客房信息数据层实现代码第八阶段•第八阶段–实现业务逻辑层•要求学生自己动手编写第八阶段标准代码演示•客房、客房类型业务逻辑层实现演示示例:实现业务逻辑层第九阶段•第九阶段–实现表示层数据绑定•要求学生自己动手编写第九阶段标准代码演示•客房、客房类型表示层数据绑定演示示例:表示层数据绑定总结巩固的知识点:–三层结构中每一层的主要作用,以及各层之间的关系–实体类在三层结构中主要作用–C#中using关键作的用–泛型集合ListT的使用–ASP.NET内置对象的使用–GridView、DataList、SiteMapPath、Menu等控件的使用–验证控件的使用–母板页(MasterPage)的使用检查•针对学生的编码结果•抽查学生编写的完整代码,并演示运行结果•教师给出评分Thankyou