RaM*_*RaM 2 .net asp.net asp.net-membership
我试图FailedPasswordAttemptCount从ASP.NET内置的对象中获取,我无法找到一个,有没有办法在没有创建新的storedProc的情况下获得此值?
如果问题多余,请原谅.
提前致谢.
build-in的唯一一个功能是SqlMembershipProvider使用我发现的这个属性:
private void GetPasswordWithFormat(string username, bool updateLastLoginActivityDate, out int status, out string password, out int passwordFormat, out string passwordSalt, out int failedPasswordAttemptCount, out int failedPasswordAnswerAttemptCount, out bool isApproved, out DateTime lastLoginDate, out DateTime lastActivityDate)
Run Code Online (Sandbox Code Playgroud)
它是私人的.因此,最好的解决方案是覆盖现有的解决方案,并使用add方法滚动自己以收集所需的数据,例如:
public class MySqlMembershipProvider : SqlMembershipProvider
{
public int GetFailedPasswordAttemptCount (Guid userId)
{
// SELECT FailedPasswordAttemptCount FROM aspnet_Membership WHERE UserId = UserId
}
}
Run Code Online (Sandbox Code Playgroud)
用法:
var count = ((MySqlMembershipProvider)System.Web.Security.Membership.Provider).GetFailedPasswordAttemptCount(...);
Run Code Online (Sandbox Code Playgroud)