.net实验报告

时间:2024.3.31


燕山大学

.Net程序设计实验报告

学    院 :   信息科学与工程学院

年级专业 :    09级信息安全1班

指导教师 :       崔 永 强      

学生学号 :    090104070017     

学生姓名 :       高云蛟        

提交日期 :     20##-05-13      

实验一:实现登录界面,显示用户名字

实验设计:

         1、编写login.html文件,实现登陆界面

         2、 Login.aspx处理登录请求,登录信息保存在session中

 3、Index.aspx中输出:欢迎+用户名

主要代码:

Login.html.中代码如下:

<html xmlns="http://www.w3.org/1999/xhtml">

<head>

    <title>登录</title>

</head>

<body>

<form action="login.aspx" method="post">

用户名:<input type="text" name="userName" /><br />

密码:<input type="password" name="userPwd" size="24" /><br />

<input type="submit" value="登录"  />

</form>

</body>

</html>

Login.aspx.cs  中代码:

   protected void Page_Load(object sender, EventArgs e)

      {

          String name = Request.Form.Get("userName");

          Session["userName"] = name;

          Response.Redirect("index.aspx");

      }

   

Index.aspx.cs中代码:

protected void Page_Load(object sender, EventArgs e)

        {

            Response.Write("欢迎");

            Response.Write(Session["userName"]);

        }

实验二  统计在线人数

实验设计:

1、online.aspx 和online.aspx.cx实现显示在线人数的功能

2、global.asax和global.asax.cs主要负责响应事件和人数统计

主要代码:

Online.aspx.cs中代码:

  

        protected void Page_Load(object sender, EventArgs e)

        {

            Session.Timeout = 1;

            int i = (int)Application["user_session"];

            Response.Write("本网站当前有  ");

            Response.Write(i);

            Response.Write("  位访问者");

                 

         }

   

global.asax.cs中代码:

  void Application_Start(object sender, EventArgs e)

        {

            // 在应用程序启动时运行的代码

            Application["user_session"] = 0;

        }

void Session_Start(object sender, EventArgs e)

        {

           Application.Lock();

         Application["user_session"] = (int)Application["user_session"] + 1;

           Application.UnLock();

        }

  void Session_End(object sender, EventArgs e)

    {

          

         Application.Lock();

         Application["user_session"] = (int)Application["user_session"] - 1;

         Application.UnLock();

     }

实验三:三层架构实现用户登录与注册

实验设计:

1、            封装数据库访问的操作,定义DBHelper类

2、            定义模型类User和Role

3、            实现把模型信息存入DB中的功能,定义UserService类

4、            定义业务类UserManager,完成限制

5、            Login.aspx显示登录界面,登录成功跳转到index.aspx

6、            Register.aspx显示注册界面, 注册成功跳转到index.aspx

7、            Index.aspx显示“欢迎”

主要代码:

DBHelper类:

public class DBHelper

    {

        OleDbConnection con;

        public DBHelper()

        {

            String connectionString = "PROVIDER=Microsoft.Jet.OLEDB.4.0;Data Source=E:\\Student.mdb";

            con = new OleDbConnection(connectionString);

            con.Open();

        }

      public void executeNonQuery(String sql, OleDbParameter[] parameter)

        {

            OleDbCommand command = new OleDbCommand();

            command.Connection = con;

            command.CommandText = sql;

            for (int i = 0; i < parameter.Length; i++)

             command.Parameters.Add(parameter[i]);

             command.ExecuteNonQuery();

        }

        public void executeNonQuery(String sql)

        {

            OleDbCommand command = new OleDbCommand();

            command.Connection = con;

            command.CommandText = sql;

            command.ExecuteNonQuery();

        }

        public OleDbDataReader executeQuery(String sql)

        {

            OleDbCommand command = new OleDbCommand();

            command.Connection = con;

            command.CommandText = sql;

            OleDbDataReader reader = command.ExecuteReader();

            return reader;

        }

public OleDbDataReader executeQuery(String sql, OleDbParameter[] parameter)

        {

            OleDbCommand command = new OleDbCommand();

            command.Connection = con;

            command.CommandText = sql;

            for (int i = 0; i < parameter.Length; i++)

            command.Parameters.Add(parameter[i]);

            OleDbDataReader reader = command.ExecuteReader();

            return reader;

        }

    }

UserService

public class UserService

    {

 public UserService() { }

      public void addUser(User user)

        {

            String sql = "insert into table_user(userLogin,userPwd,userRole) values (@userLogin,@userPwd,@userRole)";

            OleDbParameter[] parameter = new OleDbParameter[]

            {

                new OleDbParameter("@userLogin",user.userLogin),

                new OleDbParameter("@userPwd",user.userPwd),

                new OleDbParameter("@userRole",user.userRole.roleID)

            };

            DBHelper helper = new DBHelper();

            helper.executeNonQuery(sql, parameter);

        }

     public void deleteUser(User user)

        {

            String sql = "delete from table table_user where userLogin=@userLogin and userPwd=@userPwd  and userRole=@userRole";

            OleDbParameter[] parameter = new OleDbParameter[]

            {

                new OleDbParameter("@userLogin",user.userLogin),

                new OleDbParameter("@userPwd",user.userPwd),

                new OleDbParameter("@userRole",user.userRole.roleID)

            };

            DBHelper helper = new DBHelper();

            helper.executeNonQuery(sql, parameter);

        }

    public User getUserByLogin(String  userLogin)

       {

            String sql = "select * from table table_user,table_role where userRole=roleID and userLogin=@user.userLogin";

            OleDbParameter[] parameter = new OleDbParameter[]

            {

                new OleDbParameter("@userLogin",userLogin),

            };

            DBHelper helper = new DBHelper();

            OleDbDataReader reader = helper.executeQuery(sql,parameter);

            if (reader.Read())

            {

                User user = new User();

                user.userLogin = reader["userName"].ToString();

                user.userPwd = reader["userPwd"].ToString();

                user.userRole = new Role();

                user.userRole.roleID = (int)reader["roleID"];

                user.userRole.roleName = reader["roleName"].ToString();

                reader.Close();

                return user;

            }

            else

                return null;

       }

  }

UserManager类:

public class UserManager

    {

      public UserManager() { }

      public bool addUser(User user)

        {

            UserService service = new UserService();

            User temp = service.getUserByLogin(user.userLogin);

            if (temp != null)

                return false;

            service.addUser(user);

            return true;

        }

 public bool login(String userLogin,String userPwd)

        {

            UserService service = new UserService();

            User temp = service.getUserByLogin(userLogin);

            if (temp == null)

                return false;

            if (userPwd.Equals(temp.userPwd))

                return true;

            else

                return false;

        }

    }

User类:

public class User

    {

        public String userLogin;

        public String userPwd;

        public Role userRole;

        public User() { }

         public String UserLogin

         {

             get { return userLogin; }

             set { userLogin = value; }

         }

         public String UserPwd

         {

             get { return userPwd; }

             set { userPwd = value; }

         }

    }

Role类:

public class Role

    {

        public int roleID;

        public String roleName;

 public Role() { }

public int RoleID

         {

             get { return roleID;}

             set {roleID = value; }

         }

public StringRoleName

         {

             get { return roleName; }

             set {roleName = value; }

         }

    }

Login.aspx中代码:

用户按下“登录”按钮时,调用Button1_Click函数

protected void Button1_Click(object sender, EventArgs e)

        {

            UserManager manager = new UserManager();

            if (manager.login(loginName.Text, loginPwd.Text))

                Response.Redirect("index.aspx");

            else

                alertLabel.Text = "用户名或密码错误";

        }

Register.aspx中代码

用户按下“注册”按钮时,调用Button1_Click函数

protected void Button1_Click(object sender, EventArgs e)

        {

            User user = new User();

            user.UserLogin = TextBox1.Text;

            user.UserPwd = TextBox2.Text;

            user.UserRole = new Role();

            user.UserRole.RoleID = "1";

            UserManager manager = new UserManager();

            if (manager.addUser(user))

                Response.Redirect("index.aspx");

            else

                alertLabel.Text = "用户名已经存在";

        }

更多相关推荐:
.Net实验报告2

实验报告学院系名称计算机与通信工程学院第1页共9页第2页共9页第3页共9页第4页共9页第5页共9页第6页共9页第7页共9页第8页共9页第9页共9页

.net实验报告

实验一环境配置与sql操作学号姓名日期20xx年11月251实验目的熟悉VS20xx开发环境复习C和SQL20xx相关操作2实验环境WindowsXPVS20xx5SQLServer20xx3实验内容1调试课本...

NETWeb实验报告

NET上机实验报告WEB数据库应用程序设计姓名杨森班级计103学号10101020xx2实验成绩一实验目的通过对aspnet学习完成一个简单的新闻管理系统系统可以实现对记录的选择编辑删除排序翻页效果二实验内容1...

.net实验报告

燕山大学Net程序设计实验报告学院信息科学与工程学院年级专业08级计算机科学2班指导教师崔永强学生学号080104010108学生姓名吴英梅提交日期20xx0513实验一实现登录界面显示用户名字实验设计1编写l...

.net实验报告

.net实验报告,内容附图。

C# .net实验报告

目录一实验目的2二实验要求2三实验内容2任务1判断每个输入的数是否可被35和7整除并将整除状态输出2任务2练习使用forwhiledowhileforeachin等循环语句3任务3绘图输出yasincxb3四实...

.net实验报告

封面设计贾丽地址中国河北省秦皇岛市河北大街438号邮编066004电话03358057068传真03358057068网址httpjwc实验一网页制作及服务组件的使用一实验目的实现个人注册页面的制作和显示注册页...

.net实验报告

源代码1usingSystemusingSystemCollectionsGenericusingSystemComponentModelusingSystemDatausingSystemDrawingusi...

。net实验报告

实验一环境配置与sql操作学号1020XXX姓名XXX日期20xx1221实验目的熟悉VS20xx开发环境复习C和SQL20xx相关操作2实验环境WindowsXPVS20xx5SQLServer20xx3实验...

13秋11级.net程序设计实验指导手册

实验要求一可读性编程高手都知道一个好的程序要具备可读性可方便自己也可方便别人所以要培养一个良好的编程习惯可注意以下几方面1代码的缩进2有效使用空格3简明的注释4意义明确的命名5着重表示的常量二亲手编写源程序在编...

燕山大学.net程序设计实验报告

燕山大学Net程序设计实验报告学院信息科学与工程学院年级专业11级指导教师任大伟学生学号110104010131学生姓名刘丽丽提交日期20xx年5月24日实验一制作一张课程表一实验要求熟悉HTML的基本语法了解...

ASPnet实验报告电子版

实验三ASPNET服务器控件实验目的掌握ASPNET40页面时间的处理过程熟练应用基本的Web服务器控件实验内容及要求在网站的用户注册页面通常都可以通过下列列表框动态选择用户的头像本实验就是先这样的功能要求如下...

.net实验报告(25篇)