Pregunta

Encontrarme en la situación en la que tengo un método con esta firma

void DoSomething(IEnumerable<T> before, IEnumerable<T> after)

Me encuentro a menudo teniendo que llamarlo cuando acabo de recibir un elemento y no IEnumerable.

Pensé en agregar las tres sobrecargas, pero eso no ayuda cuando uno de los argumentos es nulo.

Así que pensé que podría 'envolver' mi único elemento en un IEnumerable y enviarlo, pero no puedo encontrar nada en Enumerable que se parezca a lo que quiero (tal vez no estoy buscando lo suficiente).

Entonces estoy viendo algo como esto

    public static IEnumerable<T> EnumerableUnit<T>(T item)
    {
        if(item != null) yield return item;
    }

¿Es esta una buena idea? ¿O hay algo mejor que debería estar haciendo?

¿Fue útil?

Solución

Esto podría ayudar:

new[]{obj}
Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top