问:XSI和xmlns 我使用的是序列化的字典类,发现在
http://weblogs.asp.net/pwelter34/archive/2006/05/03/444961.aspx
,序列化的字典。
它适用于下面的示例类。如何正确删除xmln:从XML字典系列化XSD
<System.Xml.Serialization.XmlRoot("ccl")> _
Public Class ccl
<System.Xml.Serialization.XmlElement("name")> _
Public xx As String = ""
<System.Xml.Serialization.XmlElement("date")> _
Public yy As String = ""
'<System.Xml.Serialization.XmlElement("adict")> _
'Public ww As New SerializableDictionary(Of String, String)
End Class
但它增加了一个血腥的 的xmlns:XSI = “http://www.w3.org/2001/XMLSchema-instance和xmlns:XSD =” http://www.w3.org/2001/XMLSchema的? 到标签
现在我固定它通过改变字典类
Dim ns As System.Xml.Serialization.XmlSerializerNamespaces = New System.Xml.Serialization.XmlSerializerNamespaces()
'Add an empty namespace and empty value
ns.Add("", "")
If True Then
valueSerializer.Serialize(writer, value, ns)
Else
valueSerializer.Serialize(writer, value)
End If
其删除这些属性。
但这也意味着如果我指定它们,它不会写入它们。 如何使用属性将这两个空名称空间添加到类中?
我改成了
<System.Xml.Serialization.XmlRoot("ccl", Namespace:="")> _
,但似乎并没有工作。
代码你能改写了一下?我不确定你想要达到什么。 – Grzenio 2010-07-16 13:47:50