¿Cuál es la mejor manera de devolver dos listas en C #?
Estoy casi avergonzado de hacer esta pregunta, pero como programador de C desde hace mucho tiempo, siento que quizás no conozco la mejor manera de hacerlo en C #.
Tengo una función miembro que necesito para devolver dos listas de un tipo personalizado (List<MyType>
) y sé de antemano que siempre tendré un valor de retorno de solo dos de estas listas.
Las opciones obvias son:
public List<List<MyType>> ReturnTwoLists();
o
public void ReturnTwoLists(ref List<MyType> listOne, ref List<myType> listTwo);
Ambos parecen ser no óptimos.
¿Alguna sugerencia sobre cómo mejorar esto?
La primera forma no deja claro en la sintaxis que solo se devuelven 2 listas, y la segunda usa referencias en lugar de un valor de retorno, que parece no ser c #.