AngleSharp脚本没有运行 - 为什么?

时间:2018-02-04 18:21:16

标签: c# .net anglesharp

我已将AngleSharp安装到新的Visual Studio项目(2017和2015)控制台应用程序中。 parser.Parse似乎工作(没有例外),但我看不到任何脚本在运行。我尝试过一个简单的console.log脚本和一些更复杂的脚本。我也没有发现任何脚本错误。

为什么呢?我做得不对劲?

我希望使用控制台输出作为调试javascript的方式,就像我在浏览器的开发人员工具窗口中阅读控制台窗口一样。如果我还需要做什么特别的事情来捕捉带有AngleSharp的javascript错误,请告诉我。

谢谢。

using AngleSharp;
using AngleSharp.Parser.Html;

namespace TestAngelSharp
{
    class Program
    {
        static void Main(string[] args)
        {
            var config = Configuration.Default.WithJavaScript();
            var parser = new HtmlParser(config);
            var source = @"<!DOCTYPE html>
<html><body><textarea>Test</textarea>
<script>console.log('hi');</script>
</body></html>";
            var document = parser.Parse(source);
        }
    }
}

1 个答案:

答案 0 :(得分:1)

控制台记录器不再包含在内(这使得lib也是一个与核心库相同的PCL)。

因此,您只需将配置更改为以下内容:

var config = Configuration.Default.
    WithConsoleLogger(ctx => new Logger()).
    WithJavaScript();

其中Logger定义为

class Logger : IConsoleLogger
{
    public void Log(Object[] args)
    {
        Console.WriteLine(args);
    }
}

希望这有帮助!