Как уже упоминал кто-то другой: Бенджамин 10 апреля '13 в 22:21 "
Было легко не обращать внимания и получать аргументы для IsAssignableFrom в обратном направлении. Сейчас я пойду с GetInterfaces: p -
Ну, другой способ - просто создать метод короткого расширения, который в некоторой степени соответствует «наиболее обычному» мышлению (и согласился, что это очень маленький личный выборчтобы сделать его немного «более естественным» в зависимости от своих предпочтений):
public static class TypeExtensions
{
public static bool IsAssignableTo(this Type type, Type assignableType)
{
return assignableType.IsAssignableFrom(type);
}
}
И почему бы не пойти немного более обобщенно (ну, не уверен, действительно ли это так интересно, ну, я полагаю, я просто передаюеще один «сахар синтаксиса»):
public static class TypeExtensions
{
public static bool IsAssignableTo(this Type type, Type assignableType)
{
return assignableType.IsAssignableFrom(type);
}
public static bool IsAssignableTo<TAssignable>(this Type type)
{
return IsAssignableTo(type, typeof(TAssignable));
}
}
Я думаю, что это может быть гораздо более естественным, но, опять же, просто личное мнение:
var isTrue = michelleType.IsAssignableTo<IMaBelle>();