如何解决如何序列化一个整数值?
因为我刚刚开始使用 XML 序列化。
目前我有一个类,包含一个“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。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。