Следуя this blog и this answer, я получаю имя пользователя (что кажется правильным). Однако, когда я делаю звонок следующим образом, я получаю null.Не удается получить руководство текущего пользователя
MembershipUser uno = Membership.GetUser(); //null
MembershipUser duo = Membership.GetUser(User.Identity.Name); // null
bool tri = User.Identity.IsAuthenticated; // true
string qua = User.Identity.AuthenticationType; // "ApplicationCookie"
Пользователь определенно находится в БД, и я использовал стандартный модуль регистрации в шаблоне MVC.NET. Из-за требований в другом месте мне нужно создать фактическое руководство и не использовать имя пользователя.
Это часть моего Web.config, которая, как я подозреваю, может иметь значение. Я не большой по вопросам безопасности.
<system.web>
<authentication mode="None" />
<compilation debug="true" targetFramework="4.5.2" />
<customErrors mode="Off"></customErrors>
<httpRuntime targetFramework="4.5.2" />
</system.web>
<system.webServer>
<modules>
<remove name="FormsAuthentication" />
</modules>
</system.webServer>
на основе предоставленной вами ссылки и кода, который вы опубликовали, где вы когда-либо получали руководство, например 'Guid guid = (Guid) Membership.GetUser(). ProviderUserKey;' – MethodMan
@MethodMan Не уверен, что я следую вашему вопросу , Два первых объекта: * null *, поэтому невозможно получить какое-либо значение из свойства * ProviderUserKey *. –
Если вы следуете примеру из ссылки в блоге, не знаете, почему он не работает для вас, у вас есть настройка членства правильно, что вы .config выглядят как [класс членства MSDN] (https://msdn.microsoft.com/en-us /library/system.web.security.membership.aspx) – MethodMan