Tuple

De Banane Atomic
Aller à la navigationAller à la recherche

Utilisation

Disponible à partir du Framework .NET 4.0
Csharp.svg
// permet de regrouper plusieurs types au sein d'une classe générique
var tuple = new Tuple<string, int>("un", 1);
string s = tuple.Item1;
int i = tuple.Item2;

ValueTuple

Permet de retourner plusieurs éléments depuis une méthode.

Disponible à partir du Framework .NET 4.7 sinon via le paquet NuGet.
Cs.svg
public (int id, string value) MyMethod(int id, string value)
{
    return (id, value);
    return (prop1: id, prop2: value); // set property names
    return ValueTuple.Create(id, value);
}

var (id, value) = MyMethod(10, "dix");
var tuple = MyMethod(10, "dix");
int id = tuple.id;
string value = tuple.value;