Какие-то страшные ошибки при запуске функции HtmlAgilityPack.HtmlDocument.LoadHtml.
Operations that change non-concurrent collections must have exclusive access. A concurrent update was performed on this collection and corrupted its state. The collection's state is no longer correct.
Или
Unexpected error.
То работает, то не работает.
В чем прикол?
Код:
public partial class Form1 : Form
{
private ChromiumWebBrowser browser;
private string html;
HtmlAgilityPack.HtmlDocument doc = new HtmlAgilityPack.HtmlDocument();
HtmlNodeCollection node;
public Form1()
{
InitializeComponent();
InitializeChromium();
browser.FrameLoadEnd += WebBrowserFrameLoadEnded;
}
private async Task<string> GetHTMLFromWebBrowser()
{
string TaskHtml = await browser.GetBrowser().MainFrame.GetSourceAsync().ConfigureAwait(false); // cefsharp браузер дает html, не важно.
return TaskHtml;
}
private async void WebBrowserFrameLoadEnded(object sender, FrameLoadEndEventArgs e)
{
html = await GetHTMLFromWebBrowser();
if(html != null)
{
doc.LoadHtml(html);
// дальше доходит редко, В 1 из 5 почему-то срабатывает.
}
}
}