Проверка подлинности пользователя с помощью Entity Framework в ASP.NET MVC 3

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

В моем файле решения у меня есть библиотека классов модели, которая имеет соединение ADO.NET с базой данных, и я веб-приложение ASP.NET MVC 3.

Функциональность, которую я пытаюсь здесь получить, заключается в том, что информация, отображаемая после входа пользователя в систему, отличается для каждого пользователя. Как связать страницу входа пользователя с таблицей «пользователь» базы данных? Это напрямую используется строка подключения или мне нужно пройти через модель, которую я создал с помощью базы данных?


person wackytacky99    schedule 27.01.2012    source источник


Ответы (1)


Добавьте в таблицу пользователей поле с именем «ProviderUserKey» или MembershipUserID или что-то подобное типа uniqueidentifier. Затем вы вызываете Membership.GetUser().ProviderUserKey и используете это в своем предложении where вашей пользовательской таблицы, чтобы выбрать правильную запись пользователя на основе вошедшего в систему пользователя.

person Erik Funkenbusch    schedule 27.01.2012
comment
Это верно, но как связать представление входа пользователя с этой пользовательской таблицей для аутентификации пользователя? - person wackytacky99; 27.01.2012
comment
@mvador99 - я не понимаю. Какое отношение ваша таблица имеет к аутентификации пользователей? Аутентификация обрабатывается системой членства и не имеет ничего общего с вашей таблицей. Или вы хотите использовать свою таблицу вместо таблиц членства asp.net? Если это так, вам нужно написать собственный поставщик членства. - person Erik Funkenbusch; 27.01.2012
comment
Да, я хочу использовать таблицу User вместо таблиц Membership. Что вы подразумеваете под настраиваемым поставщиком членства? - person wackytacky99; 27.01.2012
comment
@mvador99 mvador99 - Я имею в виду, создайте собственного поставщика членства. msdn.microsoft.com/en-us/library/ie/f1kyba5e. aspx - person Erik Funkenbusch; 27.01.2012
comment
Могу ли я использовать обычного поставщика членства, а затем использовать таблицу User для хранения дополнительной информации? Если да, то позволит ли мне фильтровать SalesOrders и другие записи по пользователям? - person wackytacky99; 27.01.2012
comment
@ mvador99 - да, я сначала подумал, что ты хотел это сделать, и это работает хорошо. - person Erik Funkenbusch; 27.01.2012