You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

34 lines
1.1 KiB
C#

using JetBrains.Annotations;
using Volo.Abp.Settings;
namespace NPin.Framework.SettingManagement.Domain.Provider;
public interface ISettingManagementProvider
{
string Name { get; }
/// <summary>
/// 获取配置项
/// </summary>
/// <param name="setting"></param>
/// <param name="providerKey"></param>
/// <returns></returns>
Task<string?> GetOrNullAsync([NotNull] SettingDefinition setting, [CanBeNull] string providerKey);
/// <summary>
/// 设置配置数据
/// </summary>
/// <param name="setting"></param>
/// <param name="value"></param>
/// <param name="providerKey"></param>
/// <returns></returns>
Task SetAsync([NotNull] SettingDefinition setting, [NotNull] string value, [CanBeNull] string providerKey);
/// <summary>
/// 清除配置项
/// </summary>
/// <param name="setting"></param>
/// <param name="providerKey"></param>
/// <returns></returns>
Task ClearAsync([NotNull] SettingDefinition setting, [CanBeNull] string providerKey);
}