Предположим, у меня есть два класса, в которых есть статическая переменная XmlTag. Второй класс наследуется от первого класса. У меня есть метод шаблона, который должен получить XmlTag в зависимости от того, какой тип он использует. Какой был бы лучший способ выполнить это, не создавая экземпляр типа? Вот пример (который не будет компилироваться), который, надеюсь, иллюстрирует то, о чем я говорю.Метод шаблона доступа к статическим переменным issue
class A{
public static readonly string XmlTag = "AClass";
}
class B : A {
public static readonly string XmlTag = "BClass";
}
Этот метод в настоящее время недействителен. Статические переменные не могут быть доступны из параметров типа.
string GetName<T>(T AClass) where T : A
{
return T.XmlTag;
}
Благодарим вас за ответ. Ваши статьи были интересными. Моя проблема довольно проста, но мне сложно подумать о хорошем решении: у меня есть несколько дочерних классов, каждая из которых имеет свою собственную уникальную константу xml-тега. У меня есть общий метод Load(), в другом классе, который принимает любой из этих дочерних классов и загружает экземпляры этого класса из XmlNode. Load() должен получить xml-тег в зависимости от типа, который он использует, чтобы он знал, какие теги xml искать. – Mav3rick
Детские классы будут созданы только после того, как их xml-тег будет найден. – Mav3rick
Сколько типов мы говорим здесь? Два? три? сотни? Или потенциально неограниченный номер? –