asp.net(c#)如何读取数据库中数据来验证登陆的用户和密码是否正确?

asp.net(c#)如何读取数据库中数据来验证登陆的用户和密码是否正确?,第1张

代码如下:

stringuname=this.txtUsername.Text//得到登陆帐号

stringpwd=this.txtPassword.Text//得到登陆密码

SqlConnectionsqlCon=newSqlConnection()//创建数据库连接对象

//初始化该对象的连接字串

sqlCon.ConnectionString

ConfigurationManager.ConnectionStrings["strConn"].ConnectionString

sqlCon.Open()//打开数据库连接

SqlCommandsqlComGet=newSqlCommand()//创建SqlCommand对象

sqlComGet.Connection=sqlCon//用sqlCon初始化SqlCommand对象

sqlComGet.CommandText="select*fromTUserwhereUserName='"+uname+"'andUserPwd='"+pwd+"'"

SqlDataReadersqlDr=sqlComGet.ExecuteReader()//创建SqlDataReader对象

if(sqlDr.Read())//帐号和密码正确

{Session["UserID"]=sqlDr["UserID"]

Session["UserEmail"]=sqlDr["UserEmail"]

Session["UserName"]=uname//用Session记录帐号

Session["UserPwd"]=pwd//用Session记录密码

Response.Redirect("Default.aspx")

}

else//帐号或密码错误

{

this.lblResults.Text="您输入的用户名或密码不正确!"

}

sqlCon.Close()

ASP.NET又称为ASP+,不仅仅是ASP的简单升级,而是微软公司推出的新一代脚本语言。ASP.NET基于.NETFramework的Web开发平台,不但吸收了ASP以前版本的最大优点并参照Java、VB语言的开发优势加入了许多新的特色,同时也修正了以前的ASP版本的运行错误。

语言特点:

(1)多语言支持

多语言支持是ASP.NET的重要新特性之一,主要表现在所支持的编程语言种类多和单个语言功能强两个方面。

(2)增强的性能

在ASP.NET中,页面代码是被编译执行的,它利用提前绑定、即时编译、本地优化和缓存服务来提高性能。当第一次请求一个页面时,cLR对页面程序代码和页面自身进行编译,并在高速缓存cache中保存编译结果的副本。当第二次请求该页面时,就直接使用cache中的结果(无需再次编译)。这就大大提高了页面的处理性能。

(3)类和名空间

ASP.NET包含一整套有用的类和名空间(Namespaces)。名空间被用做一种有组织的机制--一种表示可用于其他程序和应用的程序组件的方法。名空间包含类。和类库一样,名空间可以使Web应用程序的编写变得更加容易。HtmlAnchor、HtmlContrl以及HtmlForm是ASP.NET中的几个类,它们被包含System.web.UI.HtmlControl空间中。

(4)服务器控件

ASP.NET提供了许多功能强大的服务器控件,这大大简化了web页面的创建任务。这些服务器控件提供从显示、日历、表格到用户输入验证等通用功能,它们自动维护其选择状态,并允许服务器端代码访问和调用其属性、方法和事件。因此,服务器控件提供了一个清晰的编程模型,使得Web应用的开发变得简单、容易。

我自己写的一个,用泛型写的。 public List<RoomTypeModels>SelectTypeName() { List<RoomTypeModels>objRoomTypeList = new List<RoomTypeModels>()using (SqlConnection conn = new SqlConnection(connString)) { SqlCommand objcmd = new SqlCommand(dboNameUser + ".proc_SelectTypeName", conn)//这里是执行存储过程,你也可改SQL语句。 objcmd.CommandType = CommandType.StoredProcedureconn.Open()using (SqlDataReader objReader = objcmd.ExecuteReader(CommandBehavior.CloseConnection)) { while (objReader.Read()) { RoomTypeModels objRoomType = new RoomTypeModels()objRoomType.TypeName = Convert.ToString(objReader["TypeName"])//这里读取数据库的TypeName字段赋值到objRommType类的TypeName字段。 objRoomTypeList.Add(objRoomType)} objReader.Close()} conn.Close()} return objRoomTypeList} //将类型名称添加到cboTypeName List<RoomTypeModels>roomType = manager.SelectTypeName()foreach (RoomTypeModels typename in roomType) { cboTypeName.Items.Add(typename.TypeName)}


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/sjk/9884308.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-03
下一篇 2023-05-03

发表评论

登录后才能评论

评论列表(0条)

保存