через рефлексию.
public static T Get<T>() where T : new()
{
if (typeof(Test).IsAssignableFrom(typeof(T)))
return GetTest<T as Test>();
else
return new T();
}
static T GetTest<T>() where T : Test, new()
{
return new T();
}
Сделать две перегрузки. Одну для Test
У тебя в случае Test он new Test и сделает, зачем тебе их разделять? Или ты еще логику хочешь засунуть?
что ты пытаешься сделать?
Обсуждают сегодня