首页 > 编程语言 >ASP.NET第五章 --案例

ASP.NET第五章 --案例

时间:2024-06-11 19:59:58浏览次数:20  
标签:ASP sender 密码 -- void EventArgs Application Session NET

第五章

一、

1.打开Visual Studio

2.新建ASP.NET项目 Demo

3.创建web窗体,名字叫index1

4.打开Global.asax.cs

protected void Session_Start(object sender, EventArgs e)

{

         Response.Write("开始一个新的会话!Session_Start <br />");

     }



protected void Application_BeginRequest(object sender,EventArgs e)

     {

         Response.Write("开始执行!Application_BeginRequest <br />");

      }

5. 打开index1.asax.cs

protected void Page_Load(object sender, EventArgs e)

{

    Response.Write("开始执行!Page_Load <br />");

}

6.执行index1

刷新一下

会话就没了,因为现在是第二个了

二、

1. 打开Global.asax.cs

// 应用程序开始时,执行此事件

        protected void Application_Start(object sender, EventArgs e)

        {

            // 清零

            // 1.上锁

            Application.Lock();

            // 2.对我们当前人数进行初始化 0

            Application["UserNum"] = 0;  // 对象级

            // 3.解锁

            Application.UnLock();

        }



        // 会话开始时执行此事件

        protected void Session_Start(object sender, EventArgs e)

        {

            Response.Write("开始一个新的会话!Session_Start <br />");

            // 增加在线人数

            // 1.上锁

            Application.Lock();

            // 2.让当前会话人数+1,并且赋值到一个新的变量中

            // Convert.ToInt32() 强制数据类型转换

            Application["UserNum"] = Convert.ToInt32(Application["UserNum"]) + 1;

            // 3.解锁

            Application.UnLock();

        }



        // 会话结束时,执行此事件

        protected void Session_End(object sender, EventArgs e)

        {

            Response.Write("结束会话!Session_End <br />");

            // 减少在线人数

            // 1.上锁

            Application.Lock();

            // 2.让当前会话人数-1,并且赋值到一个新的变量中

            // Convert.ToInt32() 强制数据类型转换

            Application["UserNum"] = Convert.ToInt32(Application["UserNum"]) - 1;

            // 3.解锁

            Application.UnLock();

        }

2.添加一个新的web窗体,名字叫app

3.在app.asax.cs里面接收一下全局变量

// 页面加载事件

        protected void Page_Load(object sender, EventArgs e)

        {

            // 显示当前在线人数

            Response.Write("欢迎登录,您是第" + Application["UserNum"] + "位用户");

        }

4.Ctrl+F5打开看一下

换浏览器再开一下

三、

1. 添加一个新的web窗体,名字叫index2

2.验证用户名密码首先要先写个简单的登录页面

<body>

    <form id="form1" runat="server">

        <div>

            您的姓名:<asp:TextBox ID="txtName" runat="server"></asp:TextBox>

            <br />

            您的密码:<asp:TextBox ID="txtPwd" runat="server"></asp:TextBox>

        </div>

        <asp:Button ID="btn" runat="server" Text="提交" />

    </form>

</body>

3.打开设计页面,双击提交按钮

// 提交按钮的点击事件

        protected void btn_Click(object sender, EventArgs e)

        {

            // 1.获取控件中姓名和密码的值

            string strName = txtName.Text;

            string strPwd = txtPwd.Text;



            // 2.把用户名存入Session中,密码通过Url的方式传递

            // 3.判断,如果用户名为“张三”,并且(与)密码为“123456”,那就让他执行第二步

            // 逻辑运算符:“&&与” “||或” “!非”

            if (strName == "张三" && strPwd == "123456")

            {

                // 4.用户名存入Session中

                // Session["UserName"] 键

                Session["UserName"] = strName;

                // 5.密码通过Url的方式传递  带着密码的值跳转到index3.aspx页面

                Response.Redirect("index3.aspx?pwd=" + strPwd);

            }

            else

            {

                Response.Write("输入的用户名或密码不正确!");

            }

        }

4. 添加一个新的web窗体,名字叫index3

5.Ctrl+F5打开试一下

输入用户名密码正确,点击提交,跳转到index3页面,并在url上显示密码

输入用户名密码不正确,在当前页面提示

6.打开index3.aspx.cs

// 页面加载事件

        protected void Page_Load(object sender, EventArgs e)

        {

            // 1.接收index2.aspx页面传输过来的值

            // 2.判断,当前Session的姓名不为空

            if (Session["UserName"] != null)

            {

                // 3.显示用户名和密码

                // QueryString 查找虚拟路径中变量的集合

                Response.Write("欢迎:" + Session["UserName"] + ",您的密码:" + Request.QueryString["pwd"]);

            }

        }

7.在index2.aspx中打开,输入正确用户名密码,点击提交

标签:ASP,sender,密码,--,void,EventArgs,Application,Session,NET
From: https://blog.csdn.net/m0_66701589/article/details/139604664

相关文章

  • 堆基础知识
    arenachunk通俗地说,一块由分配器分配的内存块叫做一个chunk,包含了元数据和用户数据。具体一点,chunk完整定义如下:structmalloc_chunk{INTERNAL_SIZE_Tmchunk_prev_size;/*Sizeofpreviouschunk(iffree).*/INTERNAL_SIZE_Tmchunk_size;/......
  • 【第1章】Vue环境搭建
    文章目录前言一、安装Node1.下载2.安装3.验证3.1npm版本与Node.js版本3.2验证环境4.npm4.1安装npm4.2安装包4.3全局安装包4.4更新包4.5删除包4.6查看已安装的包4.7初始化package.json5.国内源二、安装VisualStudioCode1.下载2.安装3.安装Vue-Offici......
  • Dragon Boat Festival
    Asisuniversallyacknowledged,theDragonBoatFestivalisoneofthemostimportanttraditionalChinesefestivals.Itfallsonthefifthdayofthefifthlunarmonth.TherearevariouscustomsandtraditionsduringtheDragonBoatFestival,suchaseati......
  • 路径总和-力扣
    本题想到的解法是对二叉树进行深度搜索,并记录路径和,当节点为叶子节点时,将路径和与目标值进行判断,如果相等则返回true,否则返回false,最后返回左右子树或的值即可,因为只需有一条满足条件就可以。/***Definitionforabinarytreenode.*structTreeNode{*intv......
  • 大学生HTML期末大作业——HTML+CSS+JavaScript购物商城(华为手机)
    HTML+CSS+JS【购物商城】网页设计期末课程大作业web前端开发技术web课程设计网页规划与设计......
  • 在Linux系统中使用Certbot为Nginx安装SSL证书
    在Linux系统中使用Certbot为Nginx安装SSL证书并进行配置,通常遵循以下步骤:1.安装Certbot首先确保你的系统已经安装了EPEL仓库,如果没有安装,可以通过以下命令安装:sudoyuminstallepel-release接着安装Certbot:sudoyuminstallcertbot2.配置Nginx在Nginx配置文件中添......
  • 国际物流的实际操作流程-全球利物流
    国际物流的流程复杂且环节众多,但可以简单总结为以下几个步骤:货物准备:确保货物包装符合国际运输标准,准备相关的出口文件。订舱与运输:根据货物特点选择合适的运输方式(海运、空运、陆运),向承运人订舱。报关:准备报关资料,进行出口清关。跨境运输:货物在运输过程中,可能需要多次转运和......
  • 试了下ocr
    pdf能看了,拓展的驱动下,想着是否可以ORC呢,识别到文字内容更有帮助。按网搜的顺序,开始是用pytesseract,pip安装顺利,但运行不了,提示找不到pytesseract,按网上的帮助下载win安装包,选上中文包,再试,可以运行了,就是中文基本识别不了,也不知哪里改善,只得作罢。换下一个,paddleocr,pip安装报错,......
  • 离岸价FOB是什么意思?FOB双方有什么义务?
    FOB:习惯称为装运港船上交货FOB是一种贸易术语,用于确定卖方在货物装运过程中所承担的责任。在FOB条件下,卖方负责将货物运至指定的装运港,并将货物交给买方指定的承运人。卖方完成装运后,货物的风险和责任转移给买方。FOB计算公式:FOB=成本+运费+保险费+利润,其中成本包括货物......
  • 记录--别忘了前端是靠什么起家的
    ......