Tengo un poco de lógica en un método que opera en un tipo específico y me gustaría crear un lambda genérico que encapsule la lógica. Este es el espíritu de lo que estoy tratando de hacer:¿Es posible definir una lambda genérica en C#?
public void DoSomething()
{
// ...
Func<T> GetTypeName =() => T.GetType().Name;
GetTypeName<string>();
GetTypeName<DateTime>();
GetTypeName<int>();
// ...
}
Sé que puedo pasar el tipo como un parámetro o crear un método genérico. Pero me interesa saber si un lambda puede definir sus propios parámetros genéricos. (Así que no estoy buscando alternativas.) Por lo que puedo decir, C# 3.0 no es compatible con esto.
¿Qué está tratando de hacer, exactamente * *? Recuerde que una expresión lambda es solo una función sin nombre, y la variable (Func o Acción) es solo un puntero (delegado) para esa función. Si es más específico sobre su problema, tal vez podamos ayudarlo mejor. – Robear