之前已经发表了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. Simulink仿真入门到精通(十一) 模块的封装

    当用户编写了自定义的S函数或者使用Simulink标准库中的模块搭建子系统后,可以通过封装为其设计显示外观,追加参数对话框. 封装是构建一个以对话框为接口的交互界面的过程,它将复杂的模块逻辑关系隐藏起 ...

  2. activated钩子函数

    activated钩子函数是在组件被激活后的钩子函数,mounted是不保证组件在document中,也就是组件还没有被激活,因此可以理解为activated执行在mounted之后. 在跳转传值时, ...

  3. Natas33 Writeup(Phar反序列化漏洞)

    Natas33: 又是一个上传文件的页面,源码如下: // graz XeR, the first to solve it! thanks for the feedback! // ~morla cl ...

  4. 「建议心心」要就来15道多线程面试题一次爽到底(1.1w字用心整理)

    . 本文是给**「建议收藏」200MB大厂面试文档,整理总结2020年最强面试题库「CoreJava篇」**写的答案,所有相关文章已经收录在码云仓库:https://gitee.com/bingqil ...

  5. 写了个python脚本,循环执行某一个目录下的jmeter脚本————解决的问题,每次回归时,都得一个个拉取

    import os import time #需要你改的就这3个参数 #path是放你jmx脚本的文件夹路径 path="D:\\桌面\\每次都是从共享上考最新的\\" #jtl_ ...

  6. Linux下安装MySQL的tar.gz包

    以root用户登录待安装的服务器. 上传软件包并解压. 以root用户通过sftp/ftp工具上传“mysql-5.7.24-linux-glibc2.12-x86_64.tar.gz”软件包到“/o ...

  7. Cisco 综合配置(三)

    要求: 1.PC1 PC2使用DHCP,获取IP ,VLAN为10 和20,网关在Core Switch 2上2.DHCP和web server VLAN为100,网关在Core Switch 1上3 ...

  8. 单例模式和配置admin

    单例模式和配置admin   单例模式的概念 单例模式主要目的是确保某一个类只有一个实例存在.比如,某个服务器程序的配置信息存放在一个文件中,客户端通过一个 AppConfig 的类来读取配置文件的信 ...

  9. zabbix笔记_002

    监控登录用户 监控图形配置 创建图形: 配置完成后查看图形: 创建触发器配置 创建完成后可以查看 监控磁盘IO I/O查看工具: istat 安装[需要epel源]: yum install -y s ...

  10. mysql数据库表格之间的关系

    外键 昨日内容回顾: 字段类型 约束条件 创建表的完整语法 create table 表名( 字段名 字段类型[(宽度) 约束条件], 字段名 字段类型[(宽度) 约束条件], 字段名 字段类型[(宽 ...