13
我需要能够在我的C#应用程序中简单地指定HTML元素。我只会使用Linq到Sql,但这需要可配置/可串行化为一个字符串。我当然可以使用XPath,但在这一点上像Sizzle这样的东西对于大多数人来说更加自然。在C#中有没有Sizzle/jQuery选择器的实现?
任何人都知道.net中是否存在嘶嘶声选择器实现?
我需要能够在我的C#应用程序中简单地指定HTML元素。我只会使用Linq到Sql,但这需要可配置/可串行化为一个字符串。我当然可以使用XPath,但在这一点上像Sizzle这样的东西对于大多数人来说更加自然。在C#中有没有Sizzle/jQuery选择器的实现?
任何人都知道.net中是否存在嘶嘶声选择器实现?
叶普,Fizzler。它建立在HtmlAgilityPack之上,并且工作得很好,即使作者说它是测试版。我们将它用于重大项目的生产。来自文档的示例:
// Load the document using HTMLAgilityPack as normal
var html = new HtmlDocument();
html.LoadHtml(@"
<html>
<head></head>
<body>
<div>
<p class='content'>Fizzler</p>
<p>CSS Selector Engine</p></div>
</body>
</html>");
// Fizzler for HtmlAgilityPack is implemented as the
// QuerySelectorAll extension method on HtmlNode
var document = htmlDocument.DocumentNode;
// yields: [<p class="content">Fizzler</p>]
document.QuerySelectorAll(".content");
// yields: [<p class="content">Fizzler</p>,<p>CSS Selector Engine</p>]
document.QuerySelectorAll("p");
// yields empty sequence
document.QuerySelectorAll("body>p");
// yields [<p class="content">Fizzler</p>,<p>CSS Selector Engine</p>]
document.QuerySelectorAll("body p");
// yields [<p class="content">Fizzler</p>]
document.QuerySelectorAll("p:first-child");
[CsQuery](http://github.com/jamietre/CsQuery)似乎非常有前途。我还没有使用它,只是阅读了这个问题后 - 浏览了这个问题。不应该关闭。 – robert4