2014-10-14 3 views
0

Я реализую веб-страницу, делая домашнюю страницу, у меня есть кнопка, которую пользователь использует, чтобы восстановить свой пароль (из-за его забывания). Затем моя программа отправляет ему ссылку на его электронную почту после проверки ее в базе данных. Эта ссылка позволит пользователю сбросить пароль.Как получить дату по ссылке? MVC 5

Я хочу добавить дату к ссылке, так что, если пользователь перенаправляется на страницу сбрасывания, дата проверяется, и если она превышает 1 час, она сообщает пользователю, что ему нужно переделать процесс.

ли я использовать,

DateTime saveNow = DateTime.Now;?  

Извините за плохой английский, спасибо

+0

Вы используете что-то похожее на SimpleMembership, так как вы можете перенастроить тайм-аут по умолчанию? – Damian

+2

Вы можете обрабатывать это в «БД» вместо этого, сохранить дату и время, когда пользователь запросил сброс, а затем проверить текущее время, когда они решат действие сброса. – christiandev

+0

Согласитесь с @christiandev, это лучший вариант, так как использование параметров URL может быть обойдено пользователем. – elolos

ответ

0

Вы можете использовать DateTime.Now.Ticks. Это дает целое число, которое можно легко разместить в URL-адресе, а затем снова преобразовать в DateTime.

0

Хорошо, это не совсем ответ на ваш вопрос, но есть лучший способ обработки сброса пароля таймаут. Если вы используете следующий код в действии:

WebSecurity.GeneratePasswordResetToken(emailAddress); 

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

Оттуда вы можете проверить маркер действует в действии с bool типа, используя нечто подобное ниже:

var repository = repository.GetByPasswordResetToken(resetToken); 
isValid = membership != null && repository.PasswordVerificationTokenExpirationDate > DateTime.Now; 

Это основано на предположении, которые Вы используете WebMatrix в вашей стороне сервера логики.

Смежные вопросы