Во всяком случае, это не очень хороший способ, брат, это значит, что go. Измените немного Test1 для универсальности
public static void Test1<T>(object obj)
{
//How to get the values from object. I want to retrieve 2,3 and 4,5.
if (obj is IEnumerable<T>)
{
// Vulgar display of power
foreach (var stuff in new List<T>((IEnumerable<T>)obj))
{
Console.WriteLine("Stuff from the grave : {0}", stuff);
}
}
else if (obj is T)
{
// My god... so wrong way
}
}
Используйте вот так
List<string> list = new List<string>();
list.Add("2,3");
list.Add("4,5");
Test1<string>(list);
Но вы уверены, что должны go таким образом? Для примера рассмотрим переопределение Test1.