public static void Main()
Type myClientType = typeof(MyClient);
Console.WriteLine(myClientType.IsSubclassOf(typeof(ClientBase<IClientChannel>)));
Console.WriteLine(myClientType.BaseType.GetGenericTypeDefinition() == typeof(ClientBase<>));
public interface IContract { }
public interface IClientChannel { }
public interface IContractChannel : IContract, IClientChannel { }
public class ClientBase<T> { }
public class MyClient : ClientBase<IContractChannel> { }