有关类的序列化问题

sphinger 2009-03-25 03:04:31
有类如下

public class OperationType
{
private int operationTypeId;
private string operationTypeName;

public int OperationTypeId
{
get { return operationTypeId; }
set { operationTypeId = value; }
}

public string OperationTypeName
{
get { return operationTypeName; }
set { operationTypeName= value; }
}
}

序列化后如下

<OperationType>
<OperationTypeId>111</OperationTypeId>
<OperationTypeName>xxx</OperationTypeName>
</OperationType>

想要这样的

<OperationType OperationTypeId = 111>
<OperationTypeName>xxx</OperationTypeName>
</OperationType>

有办法么?
...全文
95 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
zhangkunit 2009-03-25
  • 打赏
  • 举报
回复
可能是:
[Serializable]
public class OperationType
{
private int operationTypeId;
private string operationTypeName;

[XmlAttribute]
public int OperationTypeId
{
get { return operationTypeId; }
set { operationTypeId = value; }
}

public string OperationTypeName
{
get { return operationTypeName; }
set { operationTypeName= value; }
}
}
即加上[XmlAttribute]即可。

XmlAttribute 成员作为XML特性被序列化
XMLElement 字段或特性作为Xml元素被序列化
  • 打赏
  • 举报
回复
[this.Attributes]
public int OperationTypeId
{
get { return operationTypeId; }
set { operationTypeId = value; }
}
:-)
  • 打赏
  • 举报
回复
编译器如何知道哪个该做为属性,哪个该做为元素呢?
sphinger 2009-03-25
  • 打赏
  • 举报
回复
[Quote=引用 2 楼 fangxinggood 的回复:]
想要直接用XmlSerialize你想要的效果很难,基本上需要你自己写XML了。
[/Quote]
我用的就是XmlSerialize
我感觉是不是可以在这里加点东西实现呢?

[?加点什么??]
public int OperationTypeId
{
get { return operationTypeId; }
set { operationTypeId = value; }
}


sphinger 2009-03-25
  • 打赏
  • 举报
回复
再顶
机器人 2009-03-25
  • 打赏
  • 举报
回复
想要直接用XmlSerialize你想要的效果很难,基本上需要你自己写XML了。
sphinger 2009-03-25
  • 打赏
  • 举报
回复
自己顶

110,538

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧