У меня есть 2 классов, которые унаследованы таким образомДоступ класс ребенка свойства
public class PartsParent
{
}
public class PartsCar : PartsParent
{
public int WheelRadius { get; set; }
public int Price { get; set; }
}
public class PartsBike : PartsParent
{
public int Length { get; set; }
public int Weight { get; set; }
public int Price { get; set; }
}
И у меня есть функция, которая принимает класс PartsParent в качестве параметра, и как я могу преобразовать это как partsCar/в PartsBike внутри функции и свойства доступа, такие как Price WheelRadius и т. д.?
private int PriceCollection(PartsParent mainObject)
{
int _price=0;
mainObject.OfType(PartsCar).Price;// something similar??
return _price;
}
'((PartsCar) mainObject) .WheelRadius' должны быть разработаны. Однако, если вы должны подвергнуть объект дочернему типу, попробуйте его перепроектировать. –
Кстати, вы должны определить 'Price' в' PartsParent', так как все ваши дочерние типы нуждаются в цене. Если это так, вы можете получить доступ к 'mainObject.Price' без его преобразования. –
@ J.C Да, вы правы в том, что общие свойства должны быть частью только класса родителя, а свойства объекта, о которых идет речь, являются только образцом. Ваше предложение решило мою проблему –