2014-01-31 4 views
0

Я использую код сначала с Entity Framework 6 и MVC 5.1 в Visual Studio 2013. Без внесения каких-либо изменений в web.config, классы моделей или что-либо, непосредственно относящееся к Роли мое приложение потеряли способность определять членство в роли пользователя. Фактически большая часть проекта - это шаблонный MVC. Я целенаправленно старался держать его как можно проще. Ничего особенного.Оператор роли первой роли Asp.Net перестает работать

Аутентификационные работы и Система.Web.HttpContext.Current.User.Identity заполняется соответствующим образом.

Вывод string.Join (",", Roles.GetRolesForUser()) показывает, что пользователь, хотя и входит в систему, не принадлежит к ролям.

Двойная проверка AspNetRoles, AspNetUsers и AspNetUserRoles показывает, что пользователь связан с несколькими различными ролями.

Не более 24 часов назад все функции, связанные с ролей, работали надлежащим образом, поэтому я, по крайней мере, знаю, что в какой-то момент все было правильно настроено.

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

+0

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

ответ

0

похоже, что поставщик первой роли кода нуждается в ленивой загрузке. Раньше я отключил ленивую загрузку. base.Configuration.LazyLoadingEnabled = false;. Поставщик роли начал работать, как только я включил эту функцию.

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