private IEnumerable<PropertyDescriptor> GetDistinctInstances()
{
foreach(var property in typeof(TypeWithSameProperties1).GetProperties())
{
yield return PropertyDescriptor.For(property);
}
foreach(var property in typeof(TypeWithSameProperties2).GetProperties())
{
yield return PropertyDescriptor.For(property);
}
}