2013-12-15 2 views
1

Я использую linq для соединения с сущностью. Я хочу, чтобы пользователь вошел в систему, как только он вошел в свою учетную запись. Это мой код. Это не работает. Помогите, пожалуйста«Запомнить меня» в форме входа в систему

if (this.ChkRememberme != null && this.ChkRememberme.Checked == true) 
    { 
     HttpCookie cookie = new HttpCookie(TxtUserName.Text, TxtPassword.Text); 
     cookie.Expires.AddYears(1); 
     Response.Cookies.Add(cookie); 
    } 
+5

Я бы не добавил пароль в cookie, используя другой токен (просто имя пользователя было бы достаточно) - посмотрите здесь http://stackoverflow.com/questions/2452656/asp-net-mvc-rememberme –

+1

Вы можете использовать другой SO отвечает, например: http://stackoverflow.com/questions/5619791/implementing-remember-me-feature-in-asp-net-mvc – idlerboris

+0

Можете ли вы помочь мне с точным кодом ..? –

ответ

0

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

3
if (this.ChkRememberme != null && this.ChkRememberme.Checked == true) 
{ 
    int timeout = rememberMe ? 525600 : 30; // Timeout in minutes, 525600 = 365 days. 
    var ticket = new FormsAuthenticationTicket(TxtUserName.Text, TxtPassword.Text); 
    string encrypted = FormsAuthentication.Encrypt(ticket); 
    var cookie = new HttpCookie(FormsAuthentication.FormsCookieName, encrypted); 
    cookie.Expires = System.DateTime.Now.AddMinutes(timeout);// Not my line 
    cookie.HttpOnly = true; // cookie not available in javascript. 
    Response.Cookies.Add(cookie); 
} 

Перейдите в свой web.config и найдите элемент аутентификации. Вы можете установить время истечения куков (в минутах) там, как например:

<system.web> 
    <authentication mode="Forms"> 
     <forms loginUrl="~/Account/Login" 
       name="myCookie"     <!-- optional, if you want to rename it --> 
       timeout="2880" />    <!-- expires in 48 hours --> 
    </authentication> 
</system.web> 

Источник: how to apply "Remember Me" in c#

Надеется, что это помогает

День Coding .. !!

+0

мне нужно что-то написать в веб-конфигурации .. ?? –

+0

Вы получили какую-либо ошибку после внедрения? –

+0

FormsAuthenticationTicket и помнитьНажмите здесь, чтобы сообщить об ошибке –