当前位置: 代码迷 >> ASP.NET >> ASP.NET三成架构如何在用户登录时记录主键ID
  详细解决方案

ASP.NET三成架构如何在用户登录时记录主键ID

热度:761   发布时间:2013-02-25 00:00:00.0
ASP.NET三成架构怎么在用户登录时记录主键ID
我想在用户登录时,同时记录ID到Session里面,但我不想在表示层有填写主键ID,请问怎么写方法?
这是我登录时的方法
C# code
public bool IsExists(string name, string pw, string rank)       {           bool flag = false;           string sql = "select * from ManageAdmin where AdminName='" + name + "' and AdminPw='" + pw + "' and AdminRank='" + rank + "'";           DataTable dt = sqlhelper.ExecuteQuery(sql, CommandType.Text);           if (dt.Rows.Count > 0)           {               flag = true;           }           return flag;       }


------解决方案--------------------------------------------------------
你在实体层那边新建一个用户登录的实体类,那些属性的返回值都是session的值,并且在写入的set方法里面给相应的session赋值value,即那些id,username之类的,到时候你的主键ID之间在应用层调用这个实体类的属性就可以得到了
------解决方案--------------------------------------------------------
首先登录类中继承System.Web.UI.Page。
然后下面代码
C# code
public bool IsExists(string name, string pw, string rank)       {           bool flag = false;           string sql = "select * from ManageAdmin where AdminName='" + name + "' and AdminPw='" + pw + "' and AdminRank='" + rank + "'";           DataTable dt = sqlhelper.ExecuteQuery(sql, CommandType.Text);           if (dt.Rows.Count > 0)           {               Session["ID"]=dt[0]["id"].ToString();               flag = true;           }           return flag;       }
------解决方案--------------------------------------------------------
可以登录的同时返回ID
------解决方案--------------------------------------------------------
记得好像是@@identity,返回个就好了,还有拼接字符串有注入风险。
------解决方案--------------------------------------------------------
在登录是将ID查询出来然后保存到Session里面。

------解决方案--------------------------------------------------------
探讨

在登录是将ID查询出来然后保存到Session里面。

------解决方案--------------------------------------------------------
可以用ExecuteScalar
性能会高
------解决方案--------------------------------------------------------
探讨
首先登录类中继承System.Web.UI.Page。
然后下面代码

C# code

public bool IsExists(string name, string pw, string rank)
{
bool flag = false;
string sql = "select * from ManageAdmin……

------解决方案--------------------------------------------------------
探讨

数据逻辑层能写Session的?引用:

首先登录类中继承System.Web.UI.Page。
然后下面代码
C# code

public bool IsExists(string name, string pw, string rank)
{
bool flag = false;
string sql = "select * f……

------解决方案--------------------------------------------------------
把实体类付给session
  相关解决方案