Имя пользователя сохраняется в cookie

#asp.net-mvc #asp.net-mvc-3

#asp.net-mvc #asp.net-mvc-3

Вопрос:

Я использую ASP.NET MVC 3. Когда пользователь входит в приложение моего веб-сайта и сохраняется файл cookie, имя пользователя сохраняется в том случае, в котором оно было введено.

Например, в моей базе данных имя пользователя — «SomeUser». Если пользователь входит в систему как «someuser», то сохраняется (и отображается) именно «someuser», а не «SomeUser». Если вы вводите «SOMEUSER», оно сохраняется / отображается как «SOMEUSER».

Почему это происходит? Я не помню, чтобы это когда-либо было проблемой. Есть ли обходной путь для этого, чтобы, если пользователь вводит «someuser», он сохранялся / отображался как «SomeUser»?

Ответ №1:

Поскольку MVC не хранит сам cookie-файл, вы можете захотеть просмотреть свой код, который выполняет проверку пользователя и устанавливает cookie-файл. Скорее всего, вы сохраняете имя пользователя, введенное пользователем, а не используете имя пользователя, возвращаемое API членства.

В противном случае .NET не сможет узнать, каким должен быть случай. Единственный способ узнать это — сравнить его с оболочкой в системе членства.

Комментарии:

1. А, хороший звонок. Это должно было быть интуитивно понятным. Когда я вызываю FormsAuthentication.SetAuthCookie() , я просто извлекаю имя пользователя из базы данных, чтобы получить правильный регистр. Спасибо @MystereMan, я собираюсь обвинить в отсутствии логики в воскресенье вечером 🙂