С# 7 tuple & async Старый формат: private async Task<Tuple<SomeArray[], AnotherArray[], decimal>> GetInvoiceDetailAsync(InvoiceHead invoiceHead) { ... } Как вы можете сделать это в С# 7 с новым кортежем? Ответ 1 Шаг 1: добавьте пакет ValueTuple nuget в ваш проект. Шаг 2: как говорит Лукас в своем комментарии, измените синтаксис на: private async Task<(SomeArray[], AnotherArray[], decimal)>GetInvoiceDetailAsync( InvoiceHead invoiceHead) { ... return (x, y, z); } Обратите внимание, что вы также можете добавлять имена к этим элементам кортежа в соответствии с строками: private async Task<(SomeArray[] x, AnotherArray[] y, decimal z)>GetInvoiceDetailAsync( InvoiceHead invoiceHead) { ... return (x, y, z); } И вы можете получить к ним доступ как эти имена, а не Item1, Item2 и Item3.
Ответ 1 Шаг 1: добавьте пакет ValueTuple nuget в ваш проект. Шаг 2: как говорит Лукас в своем комментарии, измените синтаксис на: private async Task<(SomeArray[], AnotherArray[], decimal)>GetInvoiceDetailAsync( InvoiceHead invoiceHead) { ... return (x, y, z); } Обратите внимание, что вы также можете добавлять имена к этим элементам кортежа в соответствии с строками: private async Task<(SomeArray[] x, AnotherArray[] y, decimal z)>GetInvoiceDetailAsync( InvoiceHead invoiceHead) { ... return (x, y, z); } И вы можете получить к ним доступ как эти имена, а не Item1, Item2 и Item3.