У меня есть следующий случай:
public interface IPerson { .. }
public class Person : IPerson { .. }
public class User : Person { .. }
Теперь; если у меня есть объект "Пользователь" - как я могу проверить, реализует ли это использование IPerson с помощью отражения? Чтобы быть более точным, у меня есть объект, который может иметь свойство SomeUser, которое должно быть какого-то типа, реализующего интерфейс "IPerson". В моем случае у меня действительно есть Пользователь, но это то, что я хочу проверить через отражение. Я не могу понять, как проверить тип свойства, так как это "Пользователь", но я хочу проверить, реализует ли он IPerson...:
var control = _container.Resolve(objType); // objType is User here
var prop = viewType.GetProperty("SomeUser");
if ((prop != null) && (prop.PropertyType is IPerson))
{ .. }
(Обратите внимание, что это упрощение моего фактического случая, но точка должна быть одинаковой...)