使用Angular在AspnetBoilerplate中更新/更改客户端的设置

问题描述 投票:0回答:1

使用Asp.net Boilerplate使用Angular / .net Core模板,我看到在“设置”命名空间中有一些客户端函数{get,getBoolean,getInt},这使得设置很容易,但我没有看到任何有关更新这些设置的文档。

var currentColor = abp.setting.get("SiteColorPreference");

https://aspnetboilerplate.com/Pages/Documents/Setting-Management

我期待在get方法旁边看到类似的set方法。我缺少什么或者我应该尝试为该功能提交PR?看起来很奇怪,只有吸气剂,没有安装者。

当然我可以更新用户服务并创建我自己的函数来更新设置,但这似乎应该像get方法一样构建到框架中。

也许这不是正确的地方,但问题的目标是我想利用本地商店的用户变量。例如,用户可能想要配置UI并具有布局设置,或者每个用户都有他们正在处理的帐户的设置...简而言之,例如Profile Provider:https://docs.microsoft.com/en-us/dotnet/api/system.web.profile.sqlprofileprovider?view=netframework-4.7.2

angular aspnetboilerplate
1个回答
0
投票

您需要根据您的要求创建Application Service。让我们研究它以更新用户主题选择。

创建一个名为UserPreferencesAppService的应用程序服务,并添加一个类似UpdateMyThemeId()的方法。并在您的方法中设置用户的主题,如下所示;

 public class UserPreferencesAppService: ApplicationService {

    const string AppPermissions.Pages_User_Settings = "AppPermissions.Pages.User.Settings"

    [AbpAuthorize(AppPermissions.Pages_User_Settings)]
    private async Task UpdateMyThemeId(string themeId)
    {
           await SettingManager.ChangeSettingForUserAsync(user, "User.Theme.Selection", themeId);

    }
 }

PS:我把代码写在了我的头顶。

© www.soinside.com 2019 - 2024. All rights reserved.