The question is how to define multiple links where links are here as a duplicate. If this question is indeed a duplicate, than the full answer should contain both cases.
Case 1 - A single pedigree has several limitations:
public interface IFoo {} public abstract class MyClass<T> where T : class, IFoo { }
Case 2 - Several generics, each with its own limitations:
public interface IFoo1 {} public interface IFoo2 {} public abstract class MyClass<T1, T2> where T1 : class, IFoo1 where T2 : IFoo2 { }
source share