之前已经发表了BLL,DAL,MODEL,三个层的源码

继续UI层:

先简单实现用户的登录及注册

高级操作可按照上一篇文章进行源码完善

如图所示↑ UI层目录文件

Reg.aspx 进行注册操作  <数据库的写入和执行>

后台源码如下:

 using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using Model;
using BLL;
using DAL;
using System.Windows.Forms; namespace WebApp
{
public partial class Reg : System.Web.UI.Page
{
User_Table user_Table;
LoginManger lm = new LoginManger(); //实例化登录验证类
AEScook aScook = new AEScook(); //实例化AES加密类
protected void Page_Load(object sender, EventArgs e)
{
        //自动执行
}
protected void btn_Reg_Click(object sender, EventArgs e)
{
if (txt_Password.Text.Trim() == "" && txt_Password2.Text.Trim() == "")
{
try
{
throw new Exception("注册失败");
}
catch
{
Response.Write("<script>alert('注册密码不能为空!请重新输入。')</script>");
}
}
else
{
if (txt_Password.Text.Trim() != txt_Password2.Text.Trim())
{
try
{
throw new Exception("注册失败");
}
catch
{
Response.Write("<script>alert('两次输入的密码不一致,请重新输入!')</script>");
}
}
else
{
if (txt_Date_Of_Birth.Text.Trim() == "")
{
try
{
throw new Exception("注册失败");
}
catch
{
Response.Write("<script>alert('请填写出生日期!')</script>");
}
}
else
{
if (txt_NickName.Text.Trim() == "")
{
try
{
throw new Exception("注册失败");
}
catch
{
Response.Write("<script>alert('请输入您的登录账号!')</script>");
}
}
else
{
if (txt_UserName.Text.Trim() == "")
{
try
{
throw new Exception("注册失败");
}
catch
{
Response.Write("<script>alert('请输入您的姓名!')</script>");
}
}
else
{ hd_CreateDate.Value = System.DateTime.Now.ToString(); //获取当前服务器时间
User_Table user_Table = new User_Table()
{
UserName = txt_UserName.Text.Trim(),
NickName = txt_NickName.Text.Trim(),
Password = txt_Password.Text.Trim(),
PwdDeed = aES(txt_Password2.Text.Trim()),
Sex = ddl_Sex.Text.Trim(),
Date_Of_Birth = Convert.ToDateTime(txt_Date_Of_Birth.Text.Trim()),
IDCard = txt_IDCard.Text.Trim(),
CreateDate = Convert.ToDateTime(hd_CreateDate.Value.Trim().ToString())
}; string messageStr = "";
if (lm.Add(user_Table, out messageStr))
{
Response.Write("<script>alert('注册成功')</script>");
Response.Redirect("Sign.aspx", false);
}
else
{
MessageBox.Show(messageStr);
txt_UserName.Focus();
}
}
}
}
}
}
} public string aES(string pwdeed) //密钥加密
{
pwdeed = txt_Password2.Text.Trim(); //调用ASE加密密码并传值给pwdeed
aScook.AESEncrypt("AAES", pwdeed, "");
return pwdeed;
}
}
}

三层架构之UI层的更多相关文章

  1. 【转载】 JAVA三层架构,持久层,业务层,表现层的理解

    JAVA三层架构,持久层,业务层,表现层的理解 转载:http://blog.csdn.net/ljf_study/article/details/64443653 SSH: Struts(表示层)+ ...

  2. 为什么三层架构中业务层(service)、持久层(dao)需要使用一个接口?

    为什么三层架构中业务层(service).持久层(dao)需要使用一个接口? 如果没有接口那么我们在控制层使用业务层或业务层使用持久层时,必须要学习每个方法,若哪一天后者的方法名改变了则直接影响到前面 ...

  3. 三层架构中bll层把datatable转换为实体model的理解

    看了很多人的项目,很多都是用到三层架构,其中BLL层中有一种将DataTable转换为实体的方法.一直没有明白为啥要这样做,今天特意去搜索了一下,如果没有答案我是准备提问,寻求解答了.还好找到一个相关 ...

  4. MySQL的三层架构之一----连接层

    1.mysql的服务端可以分为三层,分别是连接层,SQL层,存储层. 2.架构图 3.连接层定义了通信server端与client协议:

  5. 请问JAVA三层架构,持久层,业务层,表现层,都该怎么理解?和MVC三层模型有什么区别

    持久层用来固化数据,如常说的DAO层,操作数据库将数据入库业务层用来实现整体的业务逻辑 如 前台获得了数据,逻辑层去解析这些数据,效验这些数据等操作表现层很好解释  你现在看到的网页 一些界面 都属于 ...

  6. MVC和三层架构的区别

    MVC是一种设计模式,Modal,View,Controller,三层分开,解开耦合,方便替换. 三层架构包括 UI层,业务逻辑层,Dao层.UI层负责展示数据,业务逻辑层具体处理数据,Dao层负责和 ...

  7. MVC项目实践,在三层架构下实现SportsStore-01,EF Code First建模、DAL层等

    SportsStore是<精通ASP.NET MVC3框架(第三版)>中演示的MVC项目,在该项目中涵盖了MVC的众多方面,包括:使用DI容器.URL优化.导航.分页.购物车.订单.产品管 ...

  8. 浅析MVC模式与三层架构的区别01

    三层架构和MVC是有明显区别的,MVC应该是展现模式(三个加起来以后才是三层架构中的UI层)三层架构(3-tier application) 通常意义上的三层架构就是将整个业务应用划分为:表现层(UI ...

  9. MVC模式与三层架构的区别

    之前总是混淆MVC表现模式和三层架构模式,为此记录下. 三层架构和MVC是有明显区别的,MVC应该是展现模式(三个加起来以后才是三层架构中的UI层) 三层架构(3-tier application) ...

随机推荐

  1. 什么是phpMyAdmin

    phpMyAdmin 是一个以PHP为基础,以Web-Base方式架构在网站主机上的MySQL的数据库管理工具,让管理者可用Web接口管理MySQL数据库.借由此Web接口可以成为一个简易方式输入繁杂 ...

  2. MySQL中INSERT INTO SELECT的使用

    1. 语法介绍      有三张表a.b.c,现在需要从表b和表c中分别查几个字段的值插入到表a中对应的字段.对于这种情况,可以使用如下的语句来实现: INSERT INTO db1_name (fi ...

  3. leetcode面试题42. 连续子数组的最大和

      总结一道leetcode上的高频题,反反复复遇到了好多次,特别适合作为一道动态规划入门题,本文将详细的从读题开始,介绍解题思路. 题目描述示例动态规划分析代码结果 题目   面试题42. 连续子数 ...

  4. c 将年月日转化为星期

    /*得到年月日转化为星期几*/ LOCAL ulong_t DateWeekGet(ulong_t year,ulong_t month,ulong_t day) { ulong_t c = ; ul ...

  5. Java对接百度智能云人脸识别

    ------------------------->这篇文章就是自己做个笔记<------------------------- 首先登录or注册自己的百度智能云管理中心:https:// ...

  6. Natas1 Writeup(查看页面源码)

    Natas2: 提示密码就在本页,但右键被禁用,可以使用F12或者抓包查看元素得到flag. flag:ZluruAthQk7Q2MqmDeTiUij2ZvWy2mBi 常用的查看源码方法:右键查看. ...

  7. 从一个小例子引发的Java内存可见性的简单思考和猜想以及DCL单例模式中的volatile的核心作用

    环境 OS Win10 CPU 4核8线程 IDE IntelliJ IDEA 2019.3 JDK 1.8 -server模式 场景 最初的代码 一个线程A根据flag的值执行死循环,另一个线程B只 ...

  8. Javascript的document对象

    对象属性 document.title                 //设置文档标题等价于HTML的<title>标签 document.bgColor               / ...

  9. python浅学【网络服务中间件】之RabbitMQ

    一.关于AMQP: AMQP,即Advanced Message Queuing Protocol,高级消息队列协议. AMQP使符合要求的客户端应用程序能够与符合要求的消息传递中间件代理进行通信. ...

  10. hdu3367最大伪森林(并查集)

    题目链接:http://icpc.njust.edu.cn/Problem/Hdu/3367/ 题目要求一个连通图的最大伪森林,伪森林是一个最多有一个回路的图.我们只要用Kruskal最大生成树的策略 ...