I have an asp:PasswordRecovery control that stopped responding to "Forgot your password". I enter a valid user name (I know it's valid because I used it to login) and press next (this is normally where one gets their password mailed to them) and I get the error "Your attempt to retrieve your password was not successful, please try again".
So I fired up SQL profiler and found that the code was calling first aspnet_Membership_GetUserByName() and then aspnet_Membership_GetPassword(). I tried the same calls in SQL Query and I got the error: "Error converting data type varchar to datetime". The problem turned out to be that GetUser() in SQLMembershipProvider.cs was passing the following parameter: @CurrentTimeUtc='2009-03-18 17:57:48.0770000'. The problem is in the extra zeros on the right. If I take them out, the query succeeds. ...
Go to the complete details ...