Я пытаюсь использовать MethodInfo MakeGenericMethod следующим образом:
foreach (var type in types)
{
object output = null;
var method = typeof (ContentTypeResolver).GetMethod("TryConstruct");
var genmethod = method.MakeGenericMethod(type);
var arr = new object[] { from, output };
if ((bool)genmethod.Invoke(null, arr))
return (IThingy)arr[1];
}
Против следующего универсального метода:
public static bool TryConstruct<T>(string from, out IThingy result) where T : IThingy, new()
{
var thing = new T();
return thingTryConstructFrom(from, out result);
}
Проблема в том, что я получаю исключение аргумента в строке MakeGenericMethod, так как тип, который я передаю, не является 'new ()'
Есть ли способ обойти это?
Спасибо