Я пытаюсь создать базовый класс с некоторыми функциями, общими для всех производных классов.И все производные классы должны быть синглетонами.Ниже псевдо-пример.
class ExtensionSettings
{
public string GetConfigHtml()
{
// creat conifig html for all properties
}
public void SaveSettings()
{
// save stuff
}
}
class SettingsA : ExtensionSettings
{
private static SettingsA instance;
public static SettingsA Instance {get {return instance ?? (instance = new SettingsA());}}
public string setting1{get;set;}
public string setting2{get;set;}
}
class SettingsB : ExtensionSettings
{
private static SettingsB instance;
public static SettingsB Instance {get {return instance ?? (instance = new SettingsB());}}
public string setting1{get;set;}
public string setting2{get;set;}
}
static void Main(string[] args)
{
System.Console.WriteLine(SettingsA.Instance.setting1);
System.Console.WriteLine(SettingsB.Instance.setting2);
}
Можно ли переместить инстанцирующую часть в базовый класс ExtensionSettings?