Ошибка System.Reflection.TargetInvocationException (C #)

c# html-agility-pack

Вопрос

Я пытаюсь получить информацию из Интернета ( adress моего кода) с помощью HtmlAgilityPack в C #, но мне нужно подождать, пока на странице будет загружен <div class="center fs22 green lh32"> .

Когда я выполняю этот код:

    var url = $"https://www.website.com/";
    var web = new HtmlWeb();
    var doc = web.LoadFromBrowser(url, html =>
    {
        return !html.Contains("<div class=\"center fs22 green lh32\"></div>");
    });
    string adress = doc.DocumentNode
          .SelectSingleNode("//td/span[@id='testedAddress")
          .Attributes["value"].Value;
    Console.WriteLine("Voici l'adresse :",adress);

Я всегда получаю эту ошибку:

System.Reflection.TargetInvocationException

ThreadStateException: Impossible d'instancier le contrÃ'le ActiveX '8856f961-340a-11d0-a96b-00c04fd705a2', автомобильная нить actuel n'est pas un thread cloisonnà © (STA, однопоточная квартира).

Перевод: System.Reflection.TargetInvocationException: «Исключение было вызвано целью апелляции».

ThreadStateException: невозможно создать экземпляр элемента управления ActiveX '8856f961-340a-11d0-a96b-00c04fd705a2', поскольку текущий поток не является секционированной нитью (STA, однопоточная квартира).

Как я могу избавиться от этой ошибки?

Принятый ответ

Примените STAThreadAttribute к основной функции:

 [STAThread]
 static void Main(string[] args)
 {
     //Your code here
 }


Лицензировано согласно: CC-BY-SA with attribution
Не связан с Stack Overflow
Является ли этот КБ законным? Да, узнайте, почему
Лицензировано согласно: CC-BY-SA with attribution
Не связан с Stack Overflow
Является ли этот КБ законным? Да, узнайте, почему