У меня возникла интересная проблема, и я ищу некоторые предложения о том, как лучше всего справиться с этим...
У меня есть абстрактный класс, который содержит статический метод, который принимает статическую строку, которую я бы хотел определить как абстрактное свойство. Проблема в том, что С# не поддерживает следующее (см. Свойства ConfigurationSectionName и Текущие):
public abstract class ProviderConfiguration : ConfigurationSection
{
private const string _defaultProviderPropertyName = "defaultProvider";
private const string _providersPropertyName = "providers";
protected static string ConfigurationSectionName { get; }
public static Configuration Current
{
get { return Configuration)ConfigurationManager.GetSection(ConfigurationSectionName); }
}
}
Я полагаю, что одним из способов справиться с этим было бы сделать ConfigurationSectionName НЕ абстрактным, а затем создать новое определение ConfigurationSectionName в производных классах, но это выглядит довольно хаки. Любые предложения были бы наиболее желанными.
Gratias!!!