Как использовать переменную сеанса в ASP с помощью C # - PullRequest
4 голосов
/ 12 марта 2011

как мы создаем сессию на странице входа в asp .net с помощью c #, дайте мне полный пример ......

Ответы [ 3 ]

18 голосов
/ 12 марта 2011

Предполагая, что ваш код находится на странице (встроенный или в коде позади), вы можете просто использовать ...

DataType someValue = (DataType)Session["SessionVariableNameHere"]; //Getter
Session["SessionVariableNameHere"] = someNewValue; //Setter

Очевидно, что вам нужно будет правильно назвать переменную сеанса и привести к соответствующему типу данных, когда вы вернете его из сеанса.

EDIT - полный пример

protected void Login1_LoggedIn(object sender, EventArgs e)
{
    Session["LoginTime"] = DateTime.Now;
}

и позже при загрузке страницы ...

protected void Page_Load(object sender, EventArgs e)
{
    Literal1.Text = "Last Online: " + ((DateTime)Session["LoginTime"]).ToString("yyyy-MM-dd");
}
4 голосов
/ 12 марта 2011

Я обычно определяю (базовое) свойство уровня страницы и стараюсь избегать жесткого кодирования имени переменной сеанса каждый раз, когда мне приходится ссылаться на него. Вот пример:

В Constants.cs:

public static class Constants
{
  public static class SessionKeys
  {
    public static string MY_SESSION_VARIABLE = "MySessionVariable";  //Or better yet - a newly generated GUID.
  }
}

В коде страницы укажите вашу собственность:

protected MyType MyVariable
{
  get
  {
    MyType result = null;

    object myVar = Session[Constants.SessionKeys.MY_SESSION_VARIABLE];
    if (myVar != null && myVar is MyType)
    {
      result = myVar as MyType;
    }

    return result;
  }
  set 
  {
    Session[Constants.SessionKeys.MY_SESSION_VARIABLE] = value;
  }
}

В коде страницы укажите свойство:

//set
MyVariable = new MyType();

//get
string x = MyVariable.SomeProperty;
4 голосов
/ 12 марта 2011

Когда пользователь вводит правильное имя пользователя и пароль. создать сеанс, который будет содержать флаг

if(userLoggedInSuccessfully)
{
          Session["SessionVariableName"] = "Flag";
}

Если вы используете главную страницу на своей странице, просто проверьте page_load

page_load()
{
                 if(Session["SessionVariableName"] != null)
                 {
                       if(Session["SessionVariableName"]=="Flag")
                       {
                              //Valid User
                       }
                       else
                       {
                                  //Invalid user
                       }
                 }
                 else
                 {
                           //Session expired
                 }

}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...