У меня есть общий класс, и я получу около 20 различных классов, каждый из которых имеет отдельный тип данных для общей части. Класс Generic будет иметь статическое поле ConfigField, которое идентифицирует поле в файле конфигурации. Я хочу рассчитать это поле, используя комбинацию имени производного класса плюс имя общего типа данных, который он обертывает. Так, например:Получение имени класса универсального класса в статической переменной
class BaseClass<T>
{
static string ConfigField = string.format("{0}.{1}", ???, ???);
}
class DerivedInt: BaseClass<int>{}
class DerivedLong: BaseClass<long>{}
class DerivedString: BaseClass<string>{}
...
Console.WriteLn(DerivedString.ConfigField);
В результате результат «DerivedString.string» должен быть результатом. Или это невозможно, так как это статическое поле, поэтому оно существует только в базовом базовом классе? Если да, то любые другие решения?
ли вам нужно ConfigField быть 'static'? –
Да. Это глобальное поле, используемое всеми производными объектами, поэтому назначается только один раз. –