Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
{
{
"culture": "en",
"texts": {
"Menu:Home": "Home",
Expand All @@ -18,7 +18,8 @@
"DisplayName:ASettings.Setting2": "Setting 2",
"DisplayName:ASettings.Setting3": "Setting 3",
"DisplayName:BSettings.Setting1": "Setting 1",

"DisplayName:BSettings.Setting2": "Setting 2",

"Description:Connection.Ip": "The IP address of the server.",
"Description:Connection.Port": "The Port number of the server.",
"Description:Connection.Protocol": "The protocol of the connection.",
Expand All @@ -27,7 +28,7 @@
"Permission:SettingUi.System.Password": "Show 'Password' Settings",
"Permission:SettingUi.System.Password.RequiredLength": "Show 'RequiredLength' Setting",
"Permission:SettingUi.System.Password.RequiredUniqueChars": "Show 'RequiredUniqueChars' Setting",

"Permission:SettingUi.SettingExample": "Show 'SettingExample' Settings",
"Permission:SettingUi.SettingExample.ASettings": "Show 'A' Settings",
"Permission:SettingUi.SettingExample.ASettings.Setting1": "Show `Setting1' Setting",
Expand Down
Original file line number Diff line number Diff line change
@@ -1,36 +1,37 @@
{
{
"culture": "zh-Hans",
"texts": {
"Menu:Home": "首页",
"Welcome": "欢迎",
"LongWelcomeMessage": "欢迎来到该应用程序. 这是一个基于ABP框架的启动项目. 有关更多信息, 请访问 abp.io.",
"texts": {
"Menu:Home": "首页",
"Welcome": "欢迎",
"LongWelcomeMessage": "欢迎来到该应用程序. 这是一个基于ABP框架的启动项目. 有关更多信息, 请访问 abp.io.",

"Server": "服务器",
"Connection": "连接",
"SettingExample": "设置示例",
"ASettings": "A",
"BSettings": "B",
"Server": "服务器",
"Connection": "连接",
"SettingExample": "设置示例",
"ASettings": "A",
"BSettings": "B",

"DisplayName:Connection.Ip": "IP",
"DisplayName:Connection.Port": "端口",
"DisplayName:Connection.Protocol": "协议",
"DisplayName:ASettings.Setting1": "设置1",
"DisplayName:ASettings.Setting2": "设置2",
"DisplayName:ASettings.Setting3": "设置3",
"DisplayName:BSettings.Setting1": "设置1",

"Description:Connection.Ip": "服务器的IP地址.",
"Description:Connection.Port": "服务器的端口号.",
"Description:Connection.Protocol": "连接的协议.",
"DisplayName:Connection.Ip": "IP",
"DisplayName:Connection.Port": "端口",
"DisplayName:Connection.Protocol": "协议",
"DisplayName:ASettings.Setting1": "设置1",
"DisplayName:ASettings.Setting2": "设置2",
"DisplayName:ASettings.Setting3": "设置3",
"DisplayName:BSettings.Setting1": "设置1",
"DisplayName:BSettings.Setting2": "设置2",

"Permission:SettingUi.System": "显示'系统'设置",
"Permission:SettingUi.System.Password": "显示'密码'设置",
"Permission:SettingUi.System.Password.RequiredLength": "显示'要求长度'设置",
"Permission:SettingUi.System.Password.RequiredUniqueChars": "显示'要求唯一字符数量'设置",
"Description:Connection.Ip": "服务器的IP地址.",
"Description:Connection.Port": "服务器的端口号.",
"Description:Connection.Protocol": "连接的协议.",

"Permission:SettingUi.SettingExample": "显示'设置示例'设置",
"Permission:SettingUi.SettingExample.ASettings": "显示'A'设置",
"Permission:SettingUi.SettingExample.ASettings.Setting1": "显示'设置1'设置",
"Permission:SettingUi.SettingExample.BSettings": "显示'B'设置"
}
"Permission:SettingUi.System": "显示'系统'设置",
"Permission:SettingUi.System.Password": "显示'密码'设置",
"Permission:SettingUi.System.Password.RequiredLength": "显示'要求长度'设置",
"Permission:SettingUi.System.Password.RequiredUniqueChars": "显示'要求唯一字符数量'设置",

"Permission:SettingUi.SettingExample": "显示'设置示例'设置",
"Permission:SettingUi.SettingExample.ASettings": "显示'A'设置",
"Permission:SettingUi.SettingExample.ASettings.Setting1": "显示'设置1'设置",
"Permission:SettingUi.SettingExample.BSettings": "显示'B'设置"
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,8 @@ public override void Define(ISettingDefinitionContext context)
"Connection.Ip",
"127.0.0.1",
L("DisplayName:Connection.Ip"),
L("Description:Connection.Ip"))
L("Description:Connection.Ip"),
true)
.WithProperty("Group1", "Server")
.WithProperty("Group2", "Connection"),

Expand All @@ -24,7 +25,8 @@ public override void Define(ISettingDefinitionContext context)
"Connection.Port",
8080.ToString(),
L("DisplayName:Connection.Port"),
L("Description:Connection.Port")
L("Description:Connection.Port"),
true
),

// If a setting's DisplayName and Description are not defined, we can still localize it by using our own localization resources.
Expand All @@ -35,28 +37,38 @@ public override void Define(ISettingDefinitionContext context)
context.Add(
new SettingDefinition(
MyAbpAppSettings.SettingExample.ASettings.Setting1,
"setting 1 value")
"setting 1 value",
isVisibleToClients: true)
.WithProperty(SettingUiConst.Group1, MyAbpAppSettings.SettingExample.Default)
.WithProperty(SettingUiConst.Group2, MyAbpAppSettings.SettingExample.ASettings.GroupName),
new SettingDefinition(
MyAbpAppSettings.SettingExample.ASettings.Setting2,
"500")
"500",
isVisibleToClients: true)
.WithProperty(SettingUiConst.Group1, MyAbpAppSettings.SettingExample.Default)
.WithProperty(SettingUiConst.Group2, MyAbpAppSettings.SettingExample.ASettings.GroupName)
.WithProperty(SettingUiConst.Type, "number"),
new SettingDefinition(
MyAbpAppSettings.SettingExample.ASettings.Setting3,
"true")
"true",
isVisibleToClients: true)
.WithProperty(SettingUiConst.Group1, MyAbpAppSettings.SettingExample.Default)
.WithProperty(SettingUiConst.Group2, MyAbpAppSettings.SettingExample.ASettings.GroupName)
.WithProperty(SettingUiConst.Type, "checkbox"),

new SettingDefinition(
MyAbpAppSettings.SettingExample.BSettings.Setting1,
"setting 1 value")
"setting 1 value",
isVisibleToClients: true)
.WithProperty(SettingUiConst.Group1, MyAbpAppSettings.SettingExample.Default)
.WithProperty(SettingUiConst.Group2, MyAbpAppSettings.SettingExample.BSettings.GroupName)
);
.WithProperty(SettingUiConst.Group2, MyAbpAppSettings.SettingExample.BSettings.GroupName),
//this setting is not visible to clients
new SettingDefinition(
MyAbpAppSettings.SettingExample.BSettings.Setting2,
"setting 2 value")
Copy link

Copilot AI Sep 21, 2025

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

To match the comment and be explicit like the other definitions, pass isVisibleToClients: false in the constructor. This makes the intent clear and avoids relying on a default value.

Suggested change
"setting 2 value")
"setting 2 value",
isVisibleToClients: false)

Copilot uses AI. Check for mistakes.
.WithProperty(SettingUiConst.Group1, MyAbpAppSettings.SettingExample.Default)
.WithProperty(SettingUiConst.Group2, MyAbpAppSettings.SettingExample.BSettings.GroupName)
);
}

private static LocalizableString L(string name)
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -26,7 +26,8 @@ public static class BSettings
public const string GroupName = "BSettings";

public const string Setting1 = GroupName + ".Setting1";
}
public const string Setting2 = GroupName + ".Setting2";
}
}
}
}
5 changes: 5 additions & 0 deletions src/EasyAbp.Abp.SettingUi.Application/SettingUiAppService.cs
Original file line number Diff line number Diff line change
Expand Up @@ -209,6 +209,11 @@ protected virtual async Task<List<SettingInfo>> SetSettingDefinitionPropertiesAs
var settingDefinitions = await _settingDefinitionManager.GetAllAsync();
foreach (var settingDefinition in settingDefinitions)
{
if (!settingDefinition.IsVisibleToClients)
{
continue;
}

var si = await CreateSettingInfoAsync(settingDefinition);

var definedPermission = permissionDefinitions.FirstOrDefault(p => p.Name.EndsWith(si.Name));
Expand Down