Суть:
Есть комната. У комнаты есть окна, двери, вырезы в стене и т.д (назовем их элементами).
Созданы два класса соответственно:
class Room{}
class Element{}
У комнаты и у элемента есть стандартные параметры: Длина, Ширина, Высота.
Соответственно у объекта комнаты и у объекта элемента должны быть свойства с параметрами, допустим Dictionary:
class Room { public Dictionary<string,double> Params {get;set;} }
class Element { public Dictionary<string,double> Params {get;set;} }
Room room = new Room();
Element element = new Element();
room.Params["Width"];
element.Params["Width"];
Комната содержит в себе много элементов, допустим свойство List<>
public List<Element> Elements {get;set;};
Как создать общее свойство стандартных Параметров(Params) для этих двух классов? Если применить наследование, то и у объекта класса Element будет список элементов Elements:
element.Elements[0]["Width"]
,
что будет неправильным.