Я закодировал пользовательский поставщик членства для MVC2.
У меня была специфическая проблема во всех представлениях и контроллере. Сначала я использовал следующий код:
CbMembershipProvider cb_prov_ = (CbMembershipProvider)Membership.Provider;
и в действиях по получению зарегистрированной информации о пользователе я получал информацию о пользователе следующим образом:
cb_prov_.User.user_id_;
Но проблема с этим кодом была в том, что если я вошел в систему с «пользователем 1» и одновременно с «пользователем 2» и, вернувшись к экрану «пользователя 1», я увидел данные «пользователя 2», что означает последний вход в систему. пользовательские данные выбирались.
Затем я искал в сети, и мне нужно было реализовать метод getUser провайдера. Теперь я сделал это, и в каждом действии контроллера, когда мне нужна информация о текущем пользователе, я использую следующий вызов:
User user= cb_prov_.GetUser(System.Web.HttpContext.Current.User.Identity.Name);
Теперь, когда я тестировал, проблема наполовину решена, что означает, что если я открою браузер IE и на первой вкладке я войду в систему с пользователем 1 и на второй вкладке пользователь 2 и вернусь к вкладке 1, то снова появится информация о пользователе 2 .
Но если я войду с пользователем 1 в IE, а пользователь 2 с Chrome, все будет работать нормально.
Может кто-нибудь помочь мне с этой проблемой?