@embiid

Как добавить значения в Dictionary?

Как добавить значения которые возвращается после метода в цикле:
public async Task<object?> MethodFirst(IReadOnlyDictionary<string, object>? data)
        {
            data = new Dictionary<string, object>();

            foreach (var product in Enum.GetValues(typeof(ProductType)))
            {
                var price = await GetCentreProductSolutionLowestPrice(countryIsoCode3, (ProductType)product, null, context.Culture, cancellationToken).ConfigureAwait(false);

                if (string.IsNullOrEmpty(price))
                {
                    return await GetContentById(context, PleaseCallUs, "Please call us", cancellationToken, data);
                }

                //data.add ? 
            }
        }
  • Вопрос задан
  • 75 просмотров
Решения вопроса 1
AshBlade
@AshBlade Куратор тега C#
Просто хочу быть счастливым
У data тип IReadOnlyDictionary - в него нельзя записывать значения.

Для этого надо создавать отдельную переменную Dictionary (не data).

async Task<object?> MethodFirst(IReadOnlyDictionary<string, object>? data)
{
    var result = new Dictionary<string, object>();
    

    foreach (var product in Enum.GetValues(typeof(ProductType)))
    {
        var price = await GetCentreProductSolutionLowestPrice(countryIsoCode3, (ProductType)product, null, context.Culture, cancellationToken).ConfigureAwait(false);

        if (string.IsNullOrEmpty(price))
        {
            return await GetContentById(context, PleaseCallUs, "Please call us", cancellationToken, data);
        }

        result.Add("some data", new object());
    }

    return result;
}
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы