У меня есть ситуация, когда у меня есть несколько классов, которые имеют что-то общее, а что-то уникальное. Я хотел бы создать класс, который более строго типизирован, чем object [], но может содержать любой из этих других классов.
Если у меня есть например:
class MyType1
{
string common1;
string common2;
string type1unique1;
string type1unique2;
//Constructors Here
}
class MyType2
{
string common1;
string common2;
string type2unique1;
string type2unique2;
//Constructors Here
}
Я хотел бы создать что-то вроде:
class MyObject
{
string common1;
string common2;
//Code Here
}
Так что я создаю что-то вроде:
Dictionary<int, MyObject>
Это будет содержать MyType1 или MyType2, но не string или int, или что-нибудь еще, что будет содержать словарь. MyObjects, которые хранятся там, должны иметь возможность быть позже преобразованными в MyType1 или MyType2, чтобы получить доступ к уникальным атрибутам внизу.
Также было бы здорово, если бы я мог получить доступ к MyObject.common1 или MyObject.common2, не переписывая его.