我将密码到期提醒设置为 14 或 XX 天,然后单击更新。然后我再次查看它显示默认值 7 天。它从不更新密码到期提醒(以天为单位)字段,DNN 中是否存在错误。
我尝试将其更改为少于 7 天的天数,但它也没有设置。
你能告诉我我该怎么做吗?请
感谢和问候 Mohsin JK
我将密码到期提醒设置为 14 或 XX 天,然后单击更新。然后我再次查看它显示默认值 7 天。它从不更新密码到期提醒(以天为单位)字段,DNN 中是否存在错误。
我尝试将其更改为少于 7 天的天数,但它也没有设置。
你能告诉我我该怎么做吗?请
感谢和问候 Mohsin JK
这似乎是 DotNetNuke 中的一个错误,我自己在自己的网站上复制了它。
我已将此作为问题添加到 Gemini http://support.dotnetnuke.com/issue/ViewIssue.aspx?id=19436&PROJID=2
我想看看我是否也能想出一个解决方法。
我刚刚在 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 ");
注意尾随空格?并使用此代码返回存储在表中的实数。看看有人有bug。