之前已经发表了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. 一份简明的 Base64 原理解析

    书接上回,在 记一个 Base64 有关的 Bug 一文里,我们说到了 Base64 的编解码器有不同实现,交叉使用它们可能引发的问题等等. 这一回,我们来对 Base64 这一常用编解码技术的原理一 ...

  2. Nginx + uWSGI部署中的一些小坑

    1.invalid host in upstream报错 重新启动nginx : sudo /etc/init.d/nginx restart 原因是在配置负载均衡nginx.conf配置文件时,发现 ...

  3. vue-cli脚手架目录(2.0)

    vue-cli脚手架目录一览   最近在学习vue,看的稀里糊涂.今天从头开始,把cli配置的vue项目目录和配置文件搞清楚. 先看看整个项目目录结构: 再看看build文件夹下相关文件及目录: co ...

  4. 【python pip】一招解决pip下载过慢问题

    目录 概述 壹:问题描述 贰:解决过程 一.问题分析 二.问题解决 方法一:下载时加入参数-i [镜像源地址] 方法二:设置源 三.国内镜像源地址 叁:作者有话 作者 概述 在我们经常使用pip安装插 ...

  5. 实验二 Samba服务器配置

    实验二 实 验 基 本 信 息 实验名称:Samba服务器配置 实验时间:    年 月 日 实验地点: 实验目的: 了解Samba环境及协议 掌握Samba的工作原理 掌握主配置文件Samba.co ...

  6. 简述N种排序算法

    排序算法概述 排序算法是程序员日常很常见的算法,基本上每天都会使用排序,在这里将进行一下总结. 排序算法大致可分为比较类排序和非比较类排序二种,其核心区别可以简单的理解为非比较类排序是对比较类排序之前 ...

  7. R语言实战(二) 创建数据集

    2.1 数据集的概念 不同的行业对于数据集的行和列叫法不同.统计学家称它们为观测(observation)和变量(variable),数据库分析师则称其为记录(record)和字段(field),数据 ...

  8. Simulink仿真入门到精通(三) Simulink信号

    3.1 Simulink信号概述 所谓信号,表示一种随着时间而变化的量,在时间轴上的采样时刻都对应有数值. 信号在Simulink中是相当重要的组成部分,有线(line)表示,在模型中穿针引线地将各模 ...

  9. css 固比固模型

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...

  10. python中那些让开发事半功倍的模块

    1. Map Map会将一个函数映射到一个输入列表的所有元素上 ex: 有一个列表: [1,2,3,4,5,6], 现在要求把列表每个元素乘以10 如果你还不知道Map,那你可能会这样做: list1 ...