Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/maven/6.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 需要命名空间管理器或XsltContext。此查询具有前缀、变量或用户定义的函数。在HTMLAgilityPack中_C#_Html_Html Agility Pack - Fatal编程技术网

C# 需要命名空间管理器或XsltContext。此查询具有前缀、变量或用户定义的函数。在HTMLAgilityPack中

C# 需要命名空间管理器或XsltContext。此查询具有前缀、变量或用户定义的函数。在HTMLAgilityPack中,c#,html,html-agility-pack,C#,Html,Html Agility Pack,我在Html文档中有以下内容 <opf:metadata xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:opf="http://www.idpf.org/2007/opf"> <dc:title>Book Title</dc:title> <dc:language>en-us</dc:language> <meta name="cover" conte

我在Html文档中有以下内容

 <opf:metadata xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:opf="http://www.idpf.org/2007/opf">
    <dc:title>Book Title</dc:title>
    <dc:language>en-us</dc:language>
    <meta name="cover" content="My_Cover" xmlns="" />
    <dc:identifier id="BookId" opf:scheme="ISBN">123456789</dc:identifier>
    <dc:creator>Author Name</dc:creator>
    <dc:publisher>amazon.com</dc:publisher>
    <dc:subject>amazon.com</dc:subject>
    <dc:date>2014-02-28T00:00:00+05:30</dc:date>
  </opf:metadata>
但是当我试图转换时,我得到了这个错误
名称空间管理器或XsltContext。此查询具有前缀、变量或用户定义的函数。
如何更改其值?

似乎是这样

如果html文档格式正确(有效xml),则可以使用或,两者都支持名称空间/前缀

例如,要使用
XDocument
从上面的示例xml中获取
元素:

var xdoc = XDocument.Parse(OPFFile);
//or if OPFFile is file path use : XDocument.Load(OPFFile);
XNamespace dc = "http://purl.org/dc/elements/1.1/";
var date = (string)xdoc.Root.Element(dc + "date");

我没有使用LINQ。我只是在简单的windows应用程序上工作。是的,这是一个不使用第三方库的好理由(如果可能的话)。无论如何,到目前为止,我还没有找到一种将前缀与HAP一起使用的方法。
var xdoc = XDocument.Parse(OPFFile);
//or if OPFFile is file path use : XDocument.Load(OPFFile);
XNamespace dc = "http://purl.org/dc/elements/1.1/";
var date = (string)xdoc.Root.Element(dc + "date");