gpt4 book ai didi

c# - 的前缀 “cannot be redefined from ” 在同一个开始元素标签内

转载 作者:行者123 更新时间:2023-12-04 16:55:39 26 4
gpt4 key购买 nike

我正在创建一个 XML 文件,如下例所示,我尝试 添加 第一 xmlns归因于 <feed>标签,但它给了我一个错误:

<feed xmlns="http://www.w3.org/2005/Atom" xmlns:g="http://base.google.com/ns/1.0">

这是我尝试创建的完整 XML 文件的格式:
    <feed xmlns="http://www.w3.org/2005/Atom" xmlns:g="http://base.google.com/ns/1.0">
<title>Glowbox</title>
<link rel="self" href="https://glowbox.gr/"/>
<entry>
<g:id>
<![CDATA[ 4248 ]]>
</g:id>
<g:mpn>
<![CDATA[ BLS054 ]]>
</g:mpn>
<g:title>
<![CDATA[ Body Mist Summer Tales ]]>
</g:title>
<g:product_type/>
<g:google_product_category>
<![CDATA[ ]]>
</g:google_product_category>
<g:price>
<![CDATA[ 13.5 EUR ]]>
</g:price>
<g:custom_label_1>
<![CDATA[ no ]]>
</g:custom_label_1>
<g:image_link>
<![CDATA[ https://glowbox.gr/7798/body-mist-summer-tales.jpg ]]>
</g:image_link>
<g:condition>new</g:condition>
<g:link>
<![CDATA[
https://glowbox.gr/home/4248-body-mist-summer-tales.html
]]>
</g:link>
<g:description>
<![CDATA[
Aναζωογονητικό και ενυδατικό mist σώματος με εκχύλισμα αλόης και χαμομηλιού σε καταπληκτικά
αρώματα!
]]>
</g:description>
<g:brand>
<![CDATA[ BLUE SCENTS ]]>
</g:brand>
<g:availability>
<![CDATA[ in stock ]]>
</g:availability>
</entry>

我的 代码创建一个包含所有标签的类似 XML 文件是这样的:
XDocument xdoc;
XNamespace gw = "http://base.google.com/ns/1.0";
xdoc = new XDocument(
new XDeclaration("1.0", "", ""),
new XElement("feed", new XAttribute("xmlns", "http://www.w3.org/2005/Atom"), new XAttribute(XNamespace.Xmlns + "g", "http://base.google.com/ns/1.0"),
new XElement("title", "Newcult"),
new XElement("link", new XAttribute("href", "http://www.newcult.gr"), new XAttribute("rel", "self")),
new XElement("entry",
new XElement(gw + "id", "<![CDATA[ 1 ]]>"),
new XElement(gw + "title", "2"),
new XElement(gw + "description", "3"),
new XElement(gw + "link", "4"),
new XElement(gw + "image_link", "5"),
new XElement(gw + "brand", "6"),
new XElement(gw + "gender", "7"),
new XElement(gw + "product_type", "8"),
new XElement(gw + "condition", "new"),
new XElement(gw + "availability", "in stock"),
new XElement(gw + "price", " EUR"),
new XElement(gw + "sale_price", " EUR"),
new XElement(gw + "google_product_category", "1")
)
)
);

但是,当我 运行 它,第一个 attribute 给了我这个错误在 <feed>标签:

The prefix "cannot be redefined from" to 'http://www.w3.org/2005/Atom' within the same start element tag



我曾尝试更改 attributes 的顺序,或者稍后使用 .Add() 添加属性方法,但没有任何效果。

关于如何解决此错误的任何想法?
谢谢!

最佳答案

尝试省去很多麻烦。试试这个 :

           string header = "<?xml version=\"1.0\" encoding=\"utf-8\" ?>" +
"<feed xmlns:gw=\"http://base.google.com/ns/1.0\" xmlns=\"http://www.w3.org/2005/Atom\" xmlns:g=\"http://base.google.com/ns/1.0\">" +
"</feed>";


XDocument xdoc = XDocument.Parse(header);
XElement feed = xdoc.Root;
XNamespace gw = feed.GetNamespaceOfPrefix("gw");
XNamespace g = feed.GetNamespaceOfPrefix("g");
XNamespace ns = feed.GetDefaultNamespace();

feed.Add(new XElement(ns + "title", "Newcult" ),
new XElement(ns + "link", new object[] {
new XAttribute("href", "http://www.newcult.gr"),
new XAttribute("rel", "self"),
new XElement(ns + "entry", new object[] {
new XElement(gw + "id", "<![CDATA[ 1 ]]>"),
new XElement(gw + "title", "2"),
new XElement(gw + "description", "3"),
new XElement(gw + "link", "4"),
new XElement(gw + "image_link", "5"),
new XElement(gw + "brand", "6"),
new XElement(gw + "gender", "7"),
new XElement(gw + "product_type", "8"),
new XElement(gw + "condition", "new"),
new XElement(gw + "availability", "in stock"),
new XElement(gw + "price", " EUR"),
new XElement(gw + "sale_price", " EUR"),
new XElement(gw + "google_product_category", "1")
})
})
);

关于c# - <url> 的前缀 “cannot be redefined from ” 在同一个开始元素标签内,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58203917/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com