gpt4 book ai didi

c# - 更新 DNN 7.3 + 中的自定义门户设置

转载 作者:行者123 更新时间:2023-12-03 09:13:01 31 4
gpt4 key购买 nike

我正在接管另一位开发人员的模型并对其进行现代化改造。

他们在模块设置的 settings.ascx 页面中有以下行:

 DotNetNuke.Entities.Portals.PortalSettings.UpdatePortalSetting(this.PortalId, "setting_name", tx_emailfrom.Text);

这会引发以下警告

Warning 'PortalSettings.UpdatePortalSetting(int, string, string)' is obsolete: 'Deprecated in DNN 5.0. Replaced by DataProvider.UpdatePortalSetting(Integer, String, String)'

所以我将行更改为:

DotNetNuke.Data.DataProvider.UpdatePortalSetting( this.PortalId, "setting_name", tx_emailfrom.Text, UserId, "en-US");

按照建议,但现在我收到以下错误:

Error CS0120 An object reference is required for the non-static field, method, or property 'DataProvider.UpdatePortalSetting(int, string, string, int, string)'

更新 DNN 7.3 及更高版本的门户设置的最新方法是什么。我可以获得门户设置,只是在更新它们时遇到问题。

提前致谢。

最佳答案

以下是我的解决方法

请注意,此答案适用于“自定义”门户设置。因此,VDWWD 的解决方案适用于门户对象的所有现有门户设置。

我通过将 .Instance() 添加到以下行来修复此问题:

 DataProvider.UpdatePortalSetting( this.PortalId, "bulletin_sendemail_from", this.tx_emailfrom.Text, UserId, "en-US");

更改为

 DataProvider.Instance().UpdatePortalSetting( this.PortalId, "bulletin_sendemail_from", this.tx_emailfrom.Text, UserId, "en-US");

现在可以了

关于c# - 更新 DNN 7.3 + 中的自定义门户设置,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40164183/

31 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com