Вызов из asyn c метода к ResourceManager.GetString зависает - PullRequest
0 голосов
/ 18 марта 2020

Мы столкнулись со странным случаем, когда вызов из асинхронного c метода в ResourceManager.GetString зависает и время ожидания истекает примерно через 2 минуты.

До сих пор мы сталкивались с этим только на одном сервере, и нормально работает нормально Сервер - Windows Дата-центр Server 2016.

Приложение работает на IIS и основывается на net471 (OData)

Код:

public static string GetText(int languageId, int textId)
{
    if (!CultureInfoLazy.Value.ContainsKey(languageId))
        return null;

    var key = $"LI{textId}";

    //Hangs here:
    return LabelInfoCore.ResourceManager.GetString(key, CultureInfoLazy.Value[languageId]);
}

private static async Task<string> GetTextAsync(int languageId, int textId)
{
    //..some stuff
    var labelInfoRow = LabelInfoReader.GetText( languageId, textId);
    //..some stuff
    return list.FirstOrDefault(x => x.ID == textId)?.Text;
}

The LabelInfoCore.ResourceManager is autogenerated by VS:
[global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Advanced)]
internal static global::System.Resources.ResourceManager ResourceManager {
    get {
        if (object.ReferenceEquals(resourceMan, null)) {
                    global::System.Resources.ResourceManager temp = new global::System.Resources.ResourceManager("Gecko.ObjectModel.LabelInfo.LabelInfoCore", typeof(LabelInfoCore).Assembly);
                    resourceMan = temp;
                }
                return resourceMan;
            }
        }

Есть предложения?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...