我有一些公共属性,除了公共属性名称之外,它们是相同的。我只是想知道是否有更干净的方法,因为那里似乎有很多重复的代码。这是一个示例:
public static bool Property1
{
get => LocalSettingsService.RetrieveSetting<bool>();
set => LocalSettingsService.SaveSetting<bool>(value);
}
public static bool Property2
{
get => LocalSettingsService.RetrieveSetting<bool>();
set => LocalSettingsService.SaveSetting<bool>(value);
}
public static bool Property3
{
get => LocalSettingsService.RetrieveSetting<bool>();
set => LocalSettingsService.SaveSetting<bool>(value);
}
public static bool Property4
{
get => LocalSettingsService.RetrieveSetting<bool>();
set => LocalSettingsService.SaveSetting<bool>(value);
}
RetrieveSetting和SaveSetting方法拉出CallingMemberName来完成任务。
削减重复代码的任何技巧吗?
答案 0 :(得分:0)
如果是关于美学的,那么您可以重新命名。
public static bool Property1 { get => LSL.Get<bool>(); set => LSL.Set(value); }
public static string Property2 { get => LSL.Get<string>(); set => LSL.Set(value); }
public static int Property3 { get => LSL.Get<int>(); set => LSL.Set(value); }
public static uint Property4 { get => LSL.Get<uint>(); set => LSL.Set(value); }
SaveSetting
... erm ...我的意思是Set
不需要类型,因为可以从value
的类型中推断出来。
IOptions<TOptions>
如果您需要更多的知识,可以查看.net core中的IOptions<TOptions>
模式。