Async IStringLocalizer - GetAllStrings - PullRequest
3 голосов
/ 06 марта 2019

У нас есть пользовательская реализация IStringLocazlizer , которая загружает метки из нашей внутренней CMS компании, которая предоставляет данные через интерфейс HTTP Rest.

Мы хотели использовать NET Core, встроенный в locazlier, но мне не нравится метод GetAllStrings Sync, который должен блокировать задачи для выполнения HTTP-вызова.

У нас есть кеширование, но я думаю, что оно не кажется правильным.

Есть мысли по этому поводу?

Пример:

public IEnumerable<LocalizedString> GetAllStrings(bool includeParentCultures)
    {
        Task<CmsLabelsModel> task = pipeline.SendAsync(new GetLabelsModelRequest(ResourceName));

        CmsLabelsModel result = task.GetAwaiter().GetResult(); //Yuk Yuk

        return result.LabelModels.Select(pair => new LocalizedString(pair.Key, pair.Value.Value));
    }
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...