This seems like a trick:
class Program { static IEnumerable<string> GetGenericArgumentNames(Type type) { if (!type.IsGenericTypeDefinition) { type = type.GetGenericTypeDefinition(); } foreach (var typeArg in type.GetGenericArguments()) { yield return typeArg.Name; } } static void Main(string[] args) {
source share