如何序列化一个整数值?
How to serialise an integer value?
因为我刚刚开始使用 XML 序列化。
目前我有一个 class,包含一个“X”属性:
public class Offset
{
[XmlAttribute(AttributeName = "X")]
public int X { get; set; }
XML 序列化生成如下内容:
<Offset ... X="0" .../>
^^^
|
+--- looks like a string
我希望 XML 序列化看起来像:
<Offset ... X=0 ... />
^
|
+--- I'd like an integer.
为了完成这项工作,我是这样做的:
public class Offset
{
[XmlAttribute(AttributeName = "X", DataType = "int")]
public int X { get; set; }
但这又是我的序列化 XML 的样子:
<Offset ... X="0" .../> <!-- the double quotes are still there -->
有两种可能:
- 要么我做错了什么,还有另一种方法可以删除那些双引号。
- 所需的 XML(不带双引号)无效。问题是:我使用了不同的 XML 验证器(来自 Notepad++ 的 XML 插件,说一切正常,另一个在线的,说的恰恰相反),所以我不确定。
任何人都可以告诉我所需的 XML 格式是否有效,如果是,那是什么
告诉 XML 序列化器一个属性必须作为整数处理的最简单方法(如果是浮点数,该怎么做)?
提前致谢
已经生成的输出是正确的。您说您想要的输出:无效 xml - 属性 必须 使用引号。这里没有什么可做的——代码和输出已经很好了,值已经是一个表示为 xml 属性的整数。此意图在不太严格的上下文中有效,例如 html,但在 xml.
中无效
编辑有关有效XML
的官方文档
This link 提到属性必须用引号引起来,所以 <Offset ... X=0 ... />
无效 XML.
因为我刚刚开始使用 XML 序列化。
目前我有一个 class,包含一个“X”属性:
public class Offset
{
[XmlAttribute(AttributeName = "X")]
public int X { get; set; }
XML 序列化生成如下内容:
<Offset ... X="0" .../>
^^^
|
+--- looks like a string
我希望 XML 序列化看起来像:
<Offset ... X=0 ... />
^
|
+--- I'd like an integer.
为了完成这项工作,我是这样做的:
public class Offset
{
[XmlAttribute(AttributeName = "X", DataType = "int")]
public int X { get; set; }
但这又是我的序列化 XML 的样子:
<Offset ... X="0" .../> <!-- the double quotes are still there -->
有两种可能:
- 要么我做错了什么,还有另一种方法可以删除那些双引号。
- 所需的 XML(不带双引号)无效。问题是:我使用了不同的 XML 验证器(来自 Notepad++ 的 XML 插件,说一切正常,另一个在线的,说的恰恰相反),所以我不确定。
任何人都可以告诉我所需的 XML 格式是否有效,如果是,那是什么 告诉 XML 序列化器一个属性必须作为整数处理的最简单方法(如果是浮点数,该怎么做)?
提前致谢
已经生成的输出是正确的。您说您想要的输出:无效 xml - 属性 必须 使用引号。这里没有什么可做的——代码和输出已经很好了,值已经是一个表示为 xml 属性的整数。此意图在不太严格的上下文中有效,例如 html,但在 xml.
中无效编辑有关有效XML
的官方文档This link 提到属性必须用引号引起来,所以 <Offset ... X=0 ... />
无效 XML.