решение равно l oop для всех текущих свойств класса и создает новый экземпляр на основе типа класса свойства и устанавливает новый экземпляр обратно в текущий класс.
public class TBaseClass
{
public TBaseClass()
{
Type thisClass = this.GetType();
PropertyInfo[] info = thisClass.GetProperties();
foreach (var prop in info)
{
if (typeof(TDataModel).IsAssignableFrom(prop.PropertyType))
{
object newModel = Activator.CreateInstance(prop.PropertyType);
prop.SetValue(this, newModel, null);
}
}
}
}