C #, доступ к дочерним свойствам из родительской ссылки?

<code>public void GetProps(Parent p){

   // want to access lots of child properties here
   string childProp1 = p.prop1;
   bool childProp2 = p.prop2;
   bool childProp3 = p.prop3;

}
</code>

Однако компилятор жалуется, что

"Parent does not contain definition prop1"

Функция будет принимать разные подтипы Class Parent.

Все подклассы имеют это

<code>public override string prop1 { get; set; }
</code>

Есть ли способ сделать это?

EDIT: Чтобы вопрос был понятнее

У меня в настоящее время есть гигантский if-elseif, где я делаю что-то вроде

<code>if(p is Child0){
      Child0 ch = p as Child0; 

       // want to access lots of child properties here
       string childProp1 = ch.prop1;
       bool childProp2 = ch.prop2;
       bool childProp3 = ch.prop3;

}else if(p is Child1){
      Child1 ch = p as Child1; 

       // want to access lots of child properties here
       string childProp1 = ch.prop1;
       bool childProp2 = ch.prop2;
       bool childProp3 = ch.prop3;

}else if(...// and many more 
</code>

Теперь я хотел удалить весь избыточный код и создать одну функцию, которая может справиться со всем этим.

Ответы на вопрос(5)

Ваш ответ на вопрос