ImageVerifierCode 换一换
格式:DOCX , 页数:27 ,大小:277.64KB ,
资源ID:10305157      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/10305157.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(web技术课程设计.docx)为本站会员(b****7)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

web技术课程设计.docx

1、web技术课程设计 经济管理学院管科系 课程设计报告课程设计名称 : web技术课程设计 课程设计时间: 第19周上午4节和晚上4节 专 业 班 级 学生姓名 学 号 指导老师 课程设计报告格式1.课程设计目的 Web技术课程设计是信息管理与信息系统专业的一个重要的实践性环节,是Web开发技术课的理论实践,课程设计涉及到网页设计基础、数据库应用有关知识与技能,通过本课程设计目的是让学生掌握B/S体系结构开发的基本开发思想与开发步骤及方法,掌握设计、开发、调试Web应用系统,理解HTTP协议,掌握.NET环境下有关理论与特性,学会使用C#进行系统业务逻辑的编写,掌握使用 ADO.NET进行数据库

2、开发,掌握ASP.NET 控件和创建自定义 ASP.NET 控件,了解分层架构的基本思想。2.课程设计题目描述和要求 使用.NET技术实现类似Microsoft Petshop 4.0 的宠物店网站。 要求:使用主题、母版、Web用户控件、自定义控件等特性,使用标准、数据、验证、登录等控件,实现宠物浏览,购物车,用户注册登录等功能,独立完成,正常运行,鼓励创新。3.课程设计报告内容3.1 实现的主要功能和使用的关键技术3.2 主要文件及有关功能说明3.3 核心代码及有关逻辑说明3.4 遇到的主要问题及解决思路3.5 系统特色4.课程设计总结附页参考书目:1 (美)Stephen Walther

3、主编,ASP.NET 3.5揭秘(卷1),人民邮电出版社,北京,2009年2 (美)Stephen Walther主编,ASP.NET 3.5揭秘(卷2),人民邮电出版社,北京,2009年课程设计报告(附页)PetShop 是一个范例,微软用它来展示.Net企业系统开发的能力。然而PetShop随着版本的不断更新,至现在基 于.Net 2.0的PetShop4.0为止,整个设计逐渐变得成熟而优雅,却又很多可以借鉴之处。PetShop是一个小型的项目,系统架构与代码都比较简单,却也凸现了许多颇有价值的设计与开发理念。经过一个学期的课程设计,下面根据我自己做的petshop,对里面的内容进行分析。

4、一、 实现的主要功能和使用的关键技术1)数据库链接:两种方法:datasource手动连接。 Web.config 中链接,利用connectionstring连接到对应的数据库中。 2)注册页面:通过使用TextBox、DropDownList、Button等控件实现页面的布置,并提供注册信息的输入功能。MySqlConnection实现对数据库的链接,运用sql语句判断用户名注册与否。非已注册用户完成注册功能。3)登录,首先判断用户是否存在和密码是否正确,若存在,则更新数据库中用户最后登录时间、建立SessionUsername、跳转页面至首页;若不存在,则弹窗警告。4)菜单展示,使用Da

5、taList实现。首先通过SessionUsername判断用户是否登录。默认首次登录后菜单页显示第一页。在cs文件中初始化DataList1的各项属性,DataSource属性实现与数据库的product_info表的链接。在前台页运用DataBind绑定数据 至所需位置。最终实现菜单页面的显示。另外还可进行菜单类别的选择。 5) 购物车功能,DataList实现订单的显示,所使用技术类似菜单显示,最终按钮为确认按钮,确认菜谱确认。另外还可实现对订单的增删改操作。二、 主要文件及有关功能说明Default.aspx: 主页:利用repeatercontrol控件,控制宠物分类,是的每个宠物链

6、接均能与product页面中的分类相链接。建立登录按钮,可以登录到数据库中,并且利用session 记住登录状态。Product.aspx页面:Datalist中绑定数据,分页处理,包括:上一页 下一页 首页 末页 跳转页。 Placeholder中将每个弹出页面反映到导航上;建立一个MasterPage.master:Product的页面、Item页面均利用此页面来构建。Newuser.aspx页面注册新用户。Newusersuccess页面注册新用户成功提示。SignIn页面:登陆页面,购物车页面运行之前必须登录。ShoppingCart页面购物车页面,用户将购物存进临时表。包括单价汇总。

7、Checkout页面支付页面,从购物车跳入此页面,支付成功。三、 核心代码及有关逻辑说明Default.aspx页面中:Default.aspx.cs中: protected void LinkButton1_Click(object sender, EventArgs e) Response.Redirect(SignIn.aspx);表示点击登录按钮进入到登录页面。Product.aspx: asp:Image ID=Image1 runat=server ImageUrl= /   a href=Items.aspx?productId= > >  &nb

8、sp;         上一页      下一页                首 页     末页      Product.aspx.cs中:int CurrentPage, Pagesize, RecordCount, PageCount; protected void Page_Load(o

9、bject sender, EventArgs e) Pagesize = 4; Page.Title = Request.QueryStringCategoryId.ToLower(); if (!Page.IsPostBack) ListBind(); CurrentPage = 0; ViewStatecurrentPage = CurrentPage; RecordCount = newRecordCount(); PageCount = RecordCount / Pagesize; if (RecordCount % Pagesize 0) PageCount = PageCoun

10、t + 1; ViewStatepageCount = PageCount; lbRecorderCount.Text = 总记录 + RecordCount.ToString(); lbpageandTotal.Text = (CurrentPage + 1) + / + PageCount.ToString(); lbTotalpage.Text = 共 + PageCount.ToString()+页; protected void ListBind() SqlConnection myconn = new SqlConnection(DB.CreateConnStr(); SqlDat

11、aAdapter myda = new SqlDataAdapter(select * from product where Categoryid= + Request.QueryStringCategoryId.ToString() + , myconn); DataSet myds = new DataSet(); int StartIndex = CurrentPage * Pagesize; myda.Fill(myds, StartIndex,Pagesize,product); DataList1.DataSource = myds.Tables0.DefaultView; Dat

12、aList1.DataBind(); myconn.Close(); lbdown.Enabled = true; lbup.Enabled = true; if (CurrentPage = 0) lbup.Enabled = false; if (CurrentPage = PageCount - 1) lbdown.Enabled = false; private int newRecordCount() SqlConnection myconn = new SqlConnection(DB.CreateConnStr(); myconn.Open(); SqlCommand myCom

13、mand = new SqlCommand(select count(*) from product where Categoryid= + Request.QueryStringCategoryId.ToString() + ,myconn); return Int32.Parse(myCommand.ExecuteScalar().ToString(); myconn.Close() protected void Page_Click(object sender, CommandEventArgs e) CurrentPage = (int)ViewStatecurrentPage; Pa

14、geCount = (int)ViewStatepageCount; string lbname = e.CommandName; switch (lbname) case up: if (CurrentPage 0) CurrentPage-; break; case down: if (CurrentPage PageCount - 1) CurrentPage+; break; case first: CurrentPage = 0; break; caselast: CurrentPage = PageCount - 1; break ViewStatecurrentPage = Cu

15、rrentPage; ListBind(); lbpageandTotal.Text = (CurrentPage + 1) + / + PageCount.ToString(); protected void btgo_Click(object sender, EventArgs e) CurrentPage =Int32.Parse(TextBox2.Text.ToString()-1; PageCount = (int)ViewStatepageCount; if (CurrentPage PageCount - 1) CurrentPage = PageCount - 1; /View

16、StatecurrentPage = CurrentPage; ListBind(); lbpageandTotal.Text = (CurrentPage + 1) + / + PageCount.ToString(); MasterPage.master中:源代码:protected void Page_Load(object sender, EventArgs e) HtmlAnchor lnkhome = new HtmlAnchor(); lnkhome.InnerText = 主页; lnkhome.HRef = default.aspx; PlaceHolder1.Control

17、s.Add(lnkhome); Literal myLt = new Literal(); myLt.Text = ; PlaceHolder1.Controls.Add(myLt); if (Request.QueryStringCategoryId != null) HtmlAnchor lnkProsuct = new HtmlAnchor(); lnkProsuct.InnerText = Request.QueryStringCategoryId.ToString(); lnkProsuct.HRef = Products.aspx?page=0&CategoryId= + Requ

18、est.QueryStringCategoryId.ToString(); PlaceHolder1.Controls.Add(lnkProsuct); Label1.Text = Page.Title.ToString(); Page.Title = string.Format(.net pet shop: 0,Page.Title.ToString();if (Request.QueryStringProductId != null) SqlConnection myconn = new SqlConnection(DB.CreateConnStr(); SqlCommand myComm

19、and = new SqlCommand(select CategoryId from product where ProductId= + Request.QueryStringProductId.ToString() + , myconn);myconn.Open(); string CategoryId = myCommand.ExecuteScalar().ToString(); myconn.Close();HtmlAnchor lnkProsuct1 = new HtmlAnchor(); lnkProsuct1.InnerText = CategoryId; lnkProsuct

20、1.HRef = Products.aspx?page=0&CategoryId= + CategoryId+; PlaceHolder1.Controls.Add(lnkProsuct1);Literal myll = new Literal(); myll.Text = ; PlaceHolder1.Controls.Add(myll);HtmlAnchor lnkItem = new HtmlAnchor(); SqlConnection myconn1 = new SqlConnection(DB.CreateConnStr(); SqlCommand myCommand1 = new

21、 SqlCommand(select name from product where ProductId= + Request.QueryStringProductId.ToString() + , myconn);myconn.Open(); string name = myCommand1.ExecuteScalar().ToString(); myconn.Close(); lnkItem.InnerText = name; lnkItem.HRef = Items.aspx?productId=&categoryId= + name+; PlaceHolder1.Controls.Ad

22、d(lnkItem); protected void LinkButton1_Click(object sender, EventArgs e) Response.Redirect(SignIn.aspx); protected void LinkButton2_Click(object sender, EventArgs e)Response.Redirect(ShoppingCart.aspx);Items页面中:Item.aspx.cs中代码: private string ItemId; private string CategoryId; private string product

23、Name; string _ItemId, _ItemName, pId,Qty; int m; float Unitprice; int CurrentPage, Pagesize, RecordCount, PageCount; protected void Page_Load(object sender, EventArgs e) SqlConnection myconn = new SqlConnection(DB.CreateConnStr(); SqlCommand myCommand = new SqlCommand(select name from product where

24、ProductId= + Request.QueryStringProductId.ToString() + , myconn);myconn.Open(); string name = myCommand.ExecuteScalar().ToString(); myconn.Close(); Page.Title = name; Pagesize = 4; /Page.Title = Request.QueryStringItemId.ToLower(); if (!Page.IsPostBack) ListBind(); CurrentPage = 0; ViewStatecurrentP

25、age = CurrentPage; PageCount = RecordCount / Pagesize; if (RecordCount % Pagesize 0) PageCount = PageCount + 1; ViewStatepageCount = PageCount; protected void ListBind() SqlConnection myconn = new SqlConnection(DB.CreateConnStr(); SqlDataAdapter myda = new SqlDataAdapter(select b.* ,c.* from Product a join Item b on a.ProductId =b.ProductId join Inventory c on b.ItemId =c.ItemId where a.ProductId= + Request.QueryStringProductId.ToString() + , myconn); DataSet myds = new DataSet(); int StartIndex = CurrentPage * Pagesize; myda.Fill(myds, StartIndex, Pagesize, select b.* ,c.* from Pro

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1