SimpleMembershipProvider
.其他一切都很好但是有这个问题…… 当我尝试这段代码时:
var password = Membership.GeneratePassword(Membership.MinrequiredPasswordLength,0);
MinrequiredPasswordLength始终为0.不读取成员资格提供程序的Web.config部分中定义的设置.
这是成员资格默认提供程序Web.config部分:
<membership defaultProvIDer="AspNetsqlMembershipProvIDer"> <provIDers> <clear /> <add name="AspNetsqlMembershipProvIDer" type="System.Web.Security.sqlMembershipProvIDer" connectionStringname="DefaultConnection" enablePasswordRetrIEval="false" enablePasswordreset="true" requiresQuestionAndAnswer="false" requiresUniqueEmail="false" maxInvalIDPasswordAttempts="5" minrequiredPasswordLength="6" minrequiredNonAlphanumericCharacters="0" passwordAttemptwindow="10" applicationname="/Acad" /> </provIDers></membership>
这是我得到的调试信息:
任何提示?
SimpleMembershipProvIDer是如此简单,甚至不使用Web.config部分?
解决方案
为了克服SimpleMembershipProvIDer当前限制,我使用this code来获取Web.config中定义的值:
MembershipSection membershipSection = (MembershipSection)WebConfigurationManager.GetSection("system.web/membership");var defaultProvIDer = membershipSection.DefaultProvIDer;ProvIDerSettings provIDerSettings = membershipSection.ProvIDers[defaultProvIDer];var minrequiredPasswordLength = int.Parse(provIDerSettings.Parameters["minrequiredPasswordLength"]);解决方法
I switched to SimpleMembershipProvIDer in an ASP.NET MVC 4 app.
嗯,从您在web.config中显示的相关部分来看,这似乎根本就不是这样.您正在使用AspNetsqlMembershipProvIDer.
如果要切换到SimpleMembershipProvider,请确保已正确配置它:
<membership defaultProvIDer="SimpleMembershipProvIDer"> <provIDers> <clear/> <add name="SimpleMembershipProvIDer" type="WebMatrix.WebData.SimpleMembershipProvIDer,WebMatrix.WebData" /> </provIDers></membership>
这就是说SimpleMembershipProvIDer不支持通过web.config设置这些属性.它甚至没有使用它.如果您想要这样的功能,您必须自己实现它.
总结以上是内存溢出为你收集整理的web-config – SimpleMembershipProvider MinRequiredPasswordLength始终返回0,尽管它在Web.config成员资格提供程序部分中被定义为6全部内容,希望文章能够帮你解决web-config – SimpleMembershipProvider MinRequiredPasswordLength始终返回0,尽管它在Web.config成员资格提供程序部分中被定义为6所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)