【发布时间】:2019-01-24 16:59:33
【问题描述】:
我正在构建一个读取 SQL 并构建 XML 的 VB.net 控制台应用程序。我正在使用 Visual Studio 2013 和 .Net Framework 4.5。我的代码如下:
Private _namespaceDefault as String = ""AAIS_Homeowners_Premium""
Dim writer As XmlWriter = XmlWriter.Create(policyDir & "\Policy.xml", settings)
writer.WriteStartDocument()
writer.WriteStartElement("ROOT")
writer.WriteAttributeString("xmlns", "", Nothing, _namespaceDefault)
我也试过这个:
writer.WriteAttributeString("xmlns", _namespaceDefault)
当我运行程序时,我收到以下错误:“前缀 '' 不能在同一起始元素标记内从 '' 重新定义为 'AAIS_Homeowners_Premium'。”。 xmlns 值不是 URL,而是用于验证的 Schema 文件的名称。
如何将 xmlns 属性值添加到开始元素? XML 应如下所示:
<?xml version="1.0"?>
<ROOT xmlns="AAIS_Homeowners_Premium">
<Company>12345</Company>
<LOB>ABCDEFG</LOB>
<Policies>
<Policy>
<PolicyNumber>6789</PolicyNumber>
<Date>01/24/2018</Date>
</Policy>
<Policy>
<PolicyNumber>2345</PolicyNumber>
<Date>03/17/2018</Date>
</Policy>
</Policies>
</ROOT>
谢谢。
【问题讨论】:
-
dhead61 如果你看看我的回答,它会给出你想要的。
-
你一直在编辑你的帖子。请停下来,因为答案无法反映您想要的内容,您需要根据给出的内容来弄清楚。谢谢。
-
您可能会发现使用 XML 文字和 XElement / XDocument 比在代码中构建 XML 更容易一些。您可以使用
<%=和%>从代码中直接插入一个值,例如<Guid><%= Guid.NewGuid().ToString("D") %></Guid>