¿Podría tener algo como esto:Usando métodos genéricos, ¿es posible volver a obtener diferentes tipos del mismo método?
int x = MyMethod<int>();
string y = MyMethod<string>();
Por lo tanto, un método devolver diferentes tipos en función de T. Por supuesto, no sería lógica dentro del método para asegurarse de que regresaba lo correcto.
Nunca puedo obtener algo así para ejecutar. Se queja de que no se puede convertir el valor devuelto a T:
public static T MyMethod<T>()
{
if(typeof(T) == typeof(Int32))
{
return 0;
}
else
{
return "nothing";
}
}
F En primer lugar, este código no se compilará, ya que no hay un tipo de devolución especificado. Supongo que quiere que lea 'T estático en público MyMethod()' –
Nick
Publique eso como su respuesta, Nick. Creo que esa es la solución que él necesita. – JMD
... aunque ese código como está escrito arriba todavía no se compilará, porque "nada" no es T, excepto cuando T es una cadena, y 0 no es T, excepto cuando T es un tipo numérico. – JMD