之前已经发表了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. OpenWrt tcpdump 抓包

    路由器用的是 网件的 4300 刷的是石像鬼双固件 1, 安装支持库opkg updateopkg install libpcapopkg install tcpdump 2, 设置条件开始捕获tcp ...

  2. 个人项目作业(wc.exe)

    1.GitHub项目地址 https://github.com/QiuBin666/WC 项目介绍: 题目描述 Word Count1. 实现一个简单而完整的软件工具(源程序特征统计程序).2. 进行 ...

  3. 开源项目在闲鱼、b 站上被倒卖?这是什么骚操作?

    起因 - 又是一封邮件 2020 年 3 月 2 日,收到了一封邮件,对,这次故事的起因又是一封邮件,和上次写个bug被国家信息安全漏洞共享平台抓到了一样. 这是一条评论通知邮件,一开始我以为只是正常 ...

  4. c#语言 中FileStream类的基本使用

    FileStream类不是静态类,使用时需要创建对象,FileStream类既可以对文本文件进行读也可以对多媒体文件进行写,以字节数组的形式进行读和写,多用于对大文件进行读写,区别于File类的是它对 ...

  5. $api 回调函数then应用

    getReceiveListAPI (param) { return new Promise(resolve => { let params = { // idCard: this.idCard ...

  6. javascript 自动选中容器里的文字

    前些时间有这么个需求,需要实现选中div里面的文字,选中了的文字可直接按ctrl+v(或者右键)实现黏贴操作. html代码: <div id="text" class=&q ...

  7. 重定向URL乱码问题

    问题:response.sendRedirect("http:/aaa.com/#/expressTracking?carCode=" + carCode);   后台java代码 ...

  8. F版本SpringCloud 3—大白话Eureka服务注册与发现

    引用:服务注册与发现,就像是租房子一样 前言 今天洛阳下雨了,唉,没有想到有裹上了羽绒服,不穿冷穿了热的尴尬温度.上学工作这么多年都在外面,家里竟然没有一件春天的外套. 日常闲聊之后,开始今天的芝士环 ...

  9. session生命周期,与cookie的区别

    sessinon在用户访问第一次访问服务器时创建. Session什么时候失效? 1. 服务器会把长时间没有活动的Session从服务器内存中清除,此时Session便失效.Tomcat中Sessio ...

  10. Django 配置使用日志

    一. Django中使用日志 Django中使用日志其实非常简单,只需要在项目使用的配置文件中(如果没有自定义,那么就是settings.py中)加以下设置即可,同时可以根据自己的需求进行修改: # ...