membership中密保是用来保护密码的,只有一个MembershipUser.GetPassword(string passwordAnswer)这个函数用于找回密码。
但是一般网站的密保是与邮箱关联的,所以同时要对邮箱进行保护,若要更改邮箱的话,首先验证密保是否正确,才能更改邮箱。
但现在的问题是:membershipProvider中根本没有提供这个验证QuestionAndAnswer的函数。

解决方案 »

  1.   

    还是通过类保存用户信息。List<T>,再判断
      

  2.   

    membership做用户管理底层框架针对.Net做开发在很多方面很方便,它们之间结合的非常紧密。目前还没找到比它更适合做用户管理开发的框架了。但是它的找回密码只有单一的一种生成随机密码覆盖当前密码,一般用邮件发送到用户的注册邮箱内。不过这是相当古老的做法了,目前都是用密保答案+新密码直接更改密码的方法,membership并没有提供相关方法,并且无法单独验证密保答案。有关更改密码的只有两个方法changePassword(string username,string oldPassword,string newPassword)与ResetPassword(string passwordAnswer).我试过很多方法,都没有做出来.望高人提点!