Formato antiguo:
private async Task<Tuple<SomeArray[], AnotherArray[], decimal>> GetInvoiceDetailAsync(InvoiceHead invoiceHead) { ... }¿Cómo puedes hacer eso en C#7 con el nuevo formato de tuplas?
Paso 1: agregue el paquete nuget ValueTuple a su proyecto.
Paso 2: como dice Lucas en su comentario, cambia la sintaxis a:
private async Task<(SomeArray[], AnotherArray[], decimal)>GetInvoiceDetailAsync( InvoiceHead invoiceHead) { ... return (x, y, z); }Sin embargo, tenga en cuenta que también puede agregar nombres a esos elementos de tupla, en la línea de:
private async Task<(SomeArray[] x, AnotherArray[] y, decimal z)>GetInvoiceDetailAsync( InvoiceHead invoiceHead) { ... return (x, y, z); } Y luego puede acceder a ellos como esos nombres, en lugar de Item1 , Item2 y Item3 .