HtmlAgilityPack.HtmlDocument() 会导致错误

本文关键字:错误 HtmlDocument HtmlAgilityPack | 更新日期: 2023-09-27 17:56:46

在我的应用程序中,我想使用使用 NuGet 安装的HTMLAgilityPack。但是当我尝试创建HtmlAgilityPack.HtmlDocument实例时,我得到了

HtmlDocument.cs的"找不到源"错误。

HtmlAgilityPack.HtmlDocument doc = new HtmlAgilityPack.HtmlDocument();

解决方案资源管理器->引用包含HtmlAgilityPack 。怎么了?

HtmlAgilityPack.HtmlDocument() 会导致错误

当代码引发异常并且调试器尝试向你显示代码时,或者当你单步执行调用时,会发生这种情况。

首次取消"查找源"对话框时,Visual Studio 会将源文件路径添加到例外列表中,并且不会再次询问您(此列表位于:解决方案资源管理器 ->右键单击解决方案->属性->通用属性->调试源文件 ->不要查找这些源文件)。

为了防止调试时出现"HtmlDocument.cs not found"页面,您需要单步执行 (F10) HtmlAgilityPack 的调用,而不是单步执行 (F11)。

我可以通过调试 Windows 应用商店应用程序的代码来重现您的错误:

picker.FileTypeFilter.Add(".htm");
StorageFile file = await picker.PickSingleFileAsync();
var accessStream = await file.OpenAsync(FileAccessMode.Read);
var doc = new HtmlDocument();
doc.Load(accessStream.AsStreamForRead());

如果我在 HtmlDocument 的变量定义上设置断点,则会引发错误,因为 HtmlDocument.cs 将在不同的分区中查找。如果在最后一行之后设置断点,则不会发生错误。

可能与异步编程有关...