using System.Collections.Generic;
public static void Main()
Console.WriteLine("START");
var categories = new TEST<Categories>().GetSomeItemsDependentSomehowOnT();
Console.WriteLine(categories.GetType().Name);
var users = new TEST<Users>().GetSomeItemsDependentSomehowOnT();
Console.WriteLine(users.GetType().Name);
Console.WriteLine("END");
public class Categories { }
public class TEST<TModel>
public IEnumerable<dynamic> GetSomeItemsDependentSomehowOnT()
switch (typeof (TModel).Name)
return Enumerable.Empty<Categories>();
throw new ArgumentException("Unknown type.");