asp.net – 如何使用存储过程从ASPNETDB获取用户信息

在我的管理页面中,当管理员从网格视图中单击用户名时,我试图获取用户用户名,密码和电子邮件以重新填充控件.我似乎无法获得密码,因为它需要一个我找不到的参数(密码答案).

我正在使用ASPNETDB数据库的存储过程.

 For Each usr As MembershipUser In Membership.GetAllUsers()
     Debug.Print(usr.Email)
     Debug.Print(usr.UserName)
     Debug.Print(usr.GetPassword("")) 'This line errors out
 Next
最佳答案
你必须打开Membership.EnablePasswordRetrieval Property.这是MSDN的示例配置:

<membership defaultProvider="SqlProvider" userIsOnlineTimeWindow="20">
  <providers>
    <add name="SqlProvider"
      type="System.Web.Security.SqlMembershipProvider"
      connectionStringName="SqlServices"
      enablePasswordRetrieval="true"
      enablePasswordReset="false"
      requiresQuestionAndAnswer="false"
      passwordFormat="Encrypted"
      applicationName="MyApplication" />
  </providers>
</membership>

请注意,您应该在ASP.NET应用程序的Web.config文件的system.web部分的membership成员部分中检查行enablePasswordRetrieval =“true”.

转载注明原文:asp.net – 如何使用存储过程从ASPNETDB获取用户信息 - 代码日志