I have three different classes in my current project structured as below:
class BaseClass {
    public string prop1;
    public string prop2;
    public string prop3;
}
class C1 : BaseClass {
    public string prop3;   // Common with class C2
    public string prop4;
}
class C2 : BaseClass {
    public string prop3;   // Common with class C1
    public string prop5;
}
I need to have an object which includes prop1, prop2, prop3, prop4, and prop5; but I don't want to have a duplication definition. I don't want to create a new class like this:
class NewClass {
    public string prop1;
    public string prop2;
    public string prop3;
    public string prop4;
    public string prop5;
}
Is there a way (like interface, or abstract class, or anything else) that I can refactor my old classes into so that I can have an object with all 5 properties without defining a new class?
 
     
    