热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

ASP.Net实战项目之《图书商城》第一天

Asp.net终于学完了好久没有上传文章了因为这几天在做一项目《图书购物商城》第一次接触真正的项目有那么一点点的体会感觉每一个项目所用的技术点都是一样的不一样的是不同的项目有着不同

Asp.net终于学完了好久没有上传文章了因为这几天在做一项目《图书购物商城》第一次接触真正的项目有那么一点点的体会感觉每一个项目所用的技术点都是一样的不一样的是不同的项目有着不同的业务需求就拿我做的这个来说这个项目是一个图书商城模式基本和淘宝、京东类似在商品列表选择所要购买的商品 –>添加到购物车->下订单->模拟支付宝付款

这个项目我一共用了八天的时间来完成细节做的不是特别的好有大量的bug 我只是把这个项目中的精华部分实现了我计划用八篇文章分别来介绍一下这个项目(请各位大牛勿喷小弟第一次开发项目) 由于篇符有限我不可能将所有的源码上不上传我以介绍原理为主关键的技术点我会上传源码文中如果有不合适的或者错误的地方还请您支持以便我改进万分感谢!!!、

《图书购物商城》第一天

任务:

1. 完成开发环境的搭建

2. 开发完成“注册”界面

3. 用户注册成功以后发送提示邮件

具体实现过程

1. 首先就是要在数据库中搭建数据表

这个项目我所使用的数据库是

Microsoft SQL Server 2008 Express版本

开发环境使用的是 Microsoft Visual Studio 20100

在开发之前我使用“动软代码生成器”为项目数据库的每一张数据表生成了简单三层的DAL层代码和BLL层代码(使用的目的是为了提高开发进度使用的前提必须是熟练的手写三层)

底层搭建好以后就开始编写UI层

2. 开发“注册”页面

我使用的基本上都是非服务端控件应为使用服务端控件会生成一个名字叫做“__ViewState”的隐藏域(在博客前面的文章介绍过)这会使得页面非藏的庞大用户请求页面的时候非常的慢用户体验非常的不好所有我时候非服务端控件

3. 注册界面如下

技术点如下:

jQuary的使用、Ajax无刷新页面、验证码

注意在判断时候为了保险一定要前台后后台页面都要判断这样做的目的是防止用户在禁用浏览器的js以后出现错误

这里我要说一下验证码的原理:

先使用随机函数生成一个四位的数字(字母也可以)然后存放在一个定义好的Session中(注意这里必须放在Session因为之后的登陆要判断)

验证码是使用画图类System.Drawing.Graphics 将产生的随机数生成一张图片

4. 用户注册成功以后 发送提示邮件

技术点:

这里要准备一个管理员的邮箱给所有注册了的用户发送邮件

发送邮件源码:

// 发送邮件

Mail:用户注册的邮箱 UserName:用户注册的名字

protected void SendMail(string Mail, string UserName)

{

MailMessage mailMsg = new MailMessage();//两个类,别混了,要引入System.Net这个Assembly

mailMsg.From = new MailAddress("459338001@qq.com", "管理员:宋方舟");//源邮件地址 (发件人地址)

mailMsg.To.Add(new MailAddress(Mail, UserName));//目的邮件地址(收件人地址)。可以有多个收件人

mailMsg.Subject = "恭喜注册成功!";//发送邮件的标题

mailMsg.Body = "欢迎您成为我们的会员。。。;//发送邮件的内容

SmtpClient client = new SmtpClient("smtp.qq.com");//smtp.163.com,smtp.qq.com;指定发送邮件服务器(Smtp服务器,根据发件人所使用的邮箱进行配置)

client.Credentials = new NetworkCredential(MailUserName, MailPassWord);//指定发件人的邮箱的密码MailPassWord与用户名MailUserName (网站管理员。)

client.Send(mailMsg);// 发送

}


推荐阅读
  • 在现代Web开发中,HTML5 Canvas常用于图像处理和绘图任务。本文将详细介绍如何将Canvas中的图像导出并上传至服务器,适用于拼图、图片编辑等场景。 ... [详细]
  • 本文介绍了如何通过安装和配置php_uploadprogress扩展来实现文件上传时的进度条显示功能。通过一个简单的示例,详细解释了从安装扩展到编写具体代码的全过程。 ... [详细]
  • 本文由chszs撰写,详细介绍了Apache Mina框架的核心开发流程及自定义协议处理方法。文章涵盖从创建IoService实例到协议编解码的具体步骤,适合希望深入了解Mina框架应用的开发者。 ... [详细]
  • 本文探讨了使用Python实现监控信息收集的方法,涵盖从基础的日志记录到复杂的系统运维解决方案,旨在帮助开发者和运维人员提升工作效率。 ... [详细]
  • HTML:  将文件拖拽到此区域 ... [详细]
  • Python网络编程:深入探讨TCP粘包问题及解决方案
    本文详细探讨了TCP协议下的粘包现象及其产生的原因,并提供了通过自定义报头解决粘包问题的具体实现方案。同时,对比了TCP与UDP协议在数据传输上的不同特性。 ... [详细]
  • 使用Python构建网页版图像编辑器
    本文详细介绍了一款基于Python开发的网页版图像编辑工具,具备多种图像处理功能,如黑白转换、铅笔素描效果等。 ... [详细]
  • 本报告记录了嵌入式软件设计课程中的第二次实验,主要探讨了使用KEIL V5开发环境和ST固件库进行GPIO控制及按键响应编程的方法。通过实际操作,加深了对嵌入式系统硬件接口编程的理解。 ... [详细]
  • MVC模式下的电子取证技术初探
    本文探讨了在MVC(模型-视图-控制器)架构下进行电子取证的技术方法,通过实际案例分析,提供了详细的取证步骤和技术要点。 ... [详细]
  • binlog2sql,你该知道的数据恢复工具
    binlog2sql,你该知道的数据恢复工具 ... [详细]
  • 本文介绍了如何使用Node.js通过两种不同的方法连接MongoDB数据库,包括使用MongoClient对象和连接字符串的方法。每种方法都有其特点和适用场景,适合不同需求的开发者。 ... [详细]
  • 深入理解:AJAX学习指南
    本文详细探讨了AJAX的基本概念、工作原理及其在现代Web开发中的应用,旨在为初学者提供全面的学习资料。 ... [详细]
  • 本文介绍如何使用JavaScript中的for循环来创建一个九九乘法表,适合初学者学习循环结构的应用。 ... [详细]
  • Spring Boot使用AJAX从数据库读取数据异步刷新前端表格
      近期项目需要是实现一个通过筛选选取所需数据刷新表格的功能,因为表格只占页面的一小部分,不希望整个也页面都随之刷新,所以首先想到了使用AJAX来实现。  以下介绍解决方法(请忽视 ... [详细]
  • 使用 jQuery 实现页面加载进度条
    页面加载进度条是提升用户体验的重要工具,通过在页面头部显示一个加载状态,并在页面完全加载后隐藏,可以有效减少用户的等待焦虑。本文将详细介绍如何使用 jQuery 实现这一功能。 ... [详细]
author-avatar
mobiledu2502871653
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有