【发布时间】:2014-01-09 09:36:05
【问题描述】:
我想使用这种格式“name1:name2:name3”的命名空间,但是当我尝试在我的 vb 类中像这样使用它时
Namespace name1:name2:name3
Partial Public Class Message
End class
End namespave
我收到一个错误:需要声明。
我无法控制命名空间,所以我无法更改它。
提前致谢!
编辑
我使用 xsd.exe 从 xsd 中自动生成一个类。我使用 n 开关来设置命名空间。我从提供 xsd 的组织那里获得命名空间,命名空间的格式为“ukm:sst:collection:detail”。我必须在我的班级中使用它来获取我从经过验证的班级中序列化的 xml。
我的 xml 应该是这样的
<?xml version="1.0" encoding="UTF-8" ?>
<message xmlns="ukm:sst:collection:detail" xmlns:xsi="http://www.w3.org/2001/XMLSchema-
instance" xsi:schemaLocation="ukm:sst:collection:detail">
EDIT2
我的班级:
<System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929"), _
System.SerializableAttribute(), _
System.Diagnostics.DebuggerStepThroughAttribute(), _
System.ComponentModel.DesignerCategoryAttribute("code"), _
System.Xml.Serialization.XmlTypeAttribute([Namespace]:="ukm:sst:collection:detail"), _
System.Xml.Serialization.XmlRootAttribute("melding", [Namespace]:="ukm:sst:collection:detail", IsNullable:=False)> _
Partial Public Class Message
但我的 xml 缺少 xsi:schemaLocation 属性
我的 xml 看起来像:
<?xml version="1.0" encoding="utf-8"?>
<message xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns="ukm:sst:collection:detail">
但是 xml 应该是这样的:
<?xml version="1.0" encoding="UTF-8" ?>
<message xmlns="ukm:sst:collection:detail" xmlns:xsi="http://www.w3.org/2001/XMLSchema-
instance" xsi:schemaLocation="ukm:sst:collection:detail test_v2_0.xsd">
我的自动生成的类中有 Imports System.Xml.Serialization。
我做错了什么?
【问题讨论】:
-
您没有正确使用
/n选项。选择一个名字,任何名字,用句号代替:。
标签: vb.net namespaces