首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >关于会话的教学?

关于会话的教学?
EN

Stack Overflow用户
提问于 2011-03-18 20:49:16
回答 4查看 135关注 0票数 2

有人能教我如何使用会话吗?我有一个登录页面,其中涉及mysql数据库表命名为用户,其中包括UserID=“变量号”,用户名和密码。我希望能够将用户Id存储在会话中,这样当他登录时,我可以在用户配置文件中调用它。

这是怎么做的?任何相关的编码和特定编码的放置都将是有帮助的,因为我只是根本不会拿起它。它是放在代码背后(.cs文件),还是保存在aspx页面的html中?或者两者兼而有之,以及如何实现?会话如何跨多个内部页面工作(一旦登录,您可以浏览多个与您自己的个人资料相关的页面)

代码语言:javascript
复制
    using System.Data.Odbc; 
    partial class login : System.Web.UI.Page 
    {        
    protected void   Login1_Authenticate(object sender, System.Web.UI.WebControls.AuthenticateEventArgs e)     
    {         
    OdbcConnection cn = new OdbcConnection("Driver={MySQL ODBC 3.51 Driver};Server=localhost;Database=mydb; User=root;Password=;");         
cn.Open();
         OdbcCommand cmd = new OdbcCommand("Select * from login where username=? and password=?", cn);          
    //Add parameters to get the username and password            
    cmd.Parameters.Add("@username", OdbcType.VarChar);   
      cmd.Parameters["@username"].Value = this.Login1.UserName;

        cmd.Parameters.Add("@password", OdbcType.VarChar);  
       cmd.Parameters["@password"].Value = this.Login1.Password;  

        OdbcDataReader dr = default(OdbcDataReader);        
 // Initialise a reader to read the rows from the login table.   

  // If row exists, the login is successful        
    dr = cmd.ExecuteReader();        
  if (dr.HasRows) 
{             
e.Authenticated = true;             
// Event Authenticate is true       
    }    
  } 
}
EN

回答 4

Stack Overflow用户

回答已采纳

发布于 2011-03-18 20:54:24

在C#中,要将变量存储在会话变量中:

代码语言:javascript
复制
Session["usrID"]="myUserName";

稍后,要检索会话变量:

代码语言:javascript
复制
string usrName = Convert.ToString(Session["usrID"]);
票数 5
EN

Stack Overflow用户

发布于 2011-03-18 20:53:23

http://msdn.microsoft.com/en-us/library/ms178581.aspx

基本上,为页面类中的每个变量指定一个属性,例如。

代码语言:javascript
复制
private int SelectedYear
{
    get 
    { 
        object obj = Session["SelectedYear"];
        if (obj != null)
        {
            return int.Parse(obj.ToString()); 
        }
        else
        {
            return 0;
        }
    }
    set { Session["SelectedYear"] = value; }
}
票数 3
EN

Stack Overflow用户

发布于 2011-03-18 21:01:07

如果你需要一些用户管理的东西,你应该去找一个成员提供者。http://msdn.microsoft.com/en-us/library/f1kyba5e.aspx

要获取用户信息,您可以使用

代码语言:javascript
复制
Membership.GetUser()

如果您只想使用会话来存储变量,那么可以很容易地使用

代码语言:javascript
复制
Session["name"] = value;
var value = Session["name"];

就像其他人已经提到的那样

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/5352185

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档