我将密码到期提醒设置为14天或XX天,然后点击更新。然后我又看了一遍它显示默认值7天。 它永远不会更新密码到期提醒(以天为单位)字段,DNN中是否存在错误。
我尝试将其更改为少于7天,并且也没有设置。
你可以告诉我该怎么办?请谢谢和问候 Mohsin JK
答案 0 :(得分:1)
这似乎是DotNetNuke中的一个错误,我自己在自己的网站上复制了它。
我已将此添加到Gemini作为问题http://support.dotnetnuke.com/issue/ViewIssue.aspx?id=19436&PROJID=2
我正在考虑是否可以提出解决方案。
答案 1 :(得分:1)
我刚刚在DotNetNuke 5.6.1中对此进行了测试。实际上,该设置在数据库中更新(请检查:
SELECT [SettingName]
,[SettingValue]
,[SettingIsSecure]
,[CreatedByUserID]
,[CreatedOnDate]
,[LastModifiedByUserID]
,[LastModifiedOnDate]
FROM [DNN56].[dbo].[DNN_HostSettings]
where
[SettingName] = 'PasswordExpiryReminder'
)但实际上Web用户界面始终显示“7”,尽管值存储在数据库中。
编辑:
我做了一些进一步的测试,并意识到读取PasswordConfig的属性PasswordExpiryReminder的值总是返回7!
int i = DotNetNuke.Security.Membership.PasswordConfig.PasswordExpiryReminder;
所以我把它变成了
int i = DotNetNuke.Entities.Controllers.HostController.Instance.GetInteger("PasswordExpiryReminder");
这次它返回-1(因为我没有使用提供默认值的重载)。
然后我有一个闪光灯,转向SSMS并复制了SettingName列的值并将其粘贴到Visual Studio中。
int i = DotNetNuke.Entities.Controllers.HostController.Instance.GetInteger("PasswordExpiryReminder ");
注意尾随空格?并使用此代码返回存储在表中的实数。看某人有错误。