【发布时间】:2018-10-09 07:03:37
【问题描述】:
我很确定有人问过这个问题并回答了我只是找不到它
我正在尝试将 XML 反序列化为 POCO。
这是我正在努力的部分
<Trias version="1.1" xmlns="http://www.vdv.de/trias" xmlns:siri="http://www.siri.org.uk/siri"
这是我的整个 XML:
<?xml version="1.0" encoding="UTF-8"?>
<Trias version="1.1" xmlns="http://www.vdv.de/trias" xmlns:siri="http://www.siri.org.uk/siri" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<ServiceRequest>
<siri:RequestTimestamp>2012-10-28T20:56:00Z</siri:RequestTimestamp>
<siri:RequestorRef>SEUS</siri:RequestorRef>
<RequestPayload>
<TripRequest>
<Origin>
<LocationRef>
<StopPointRef>8500320</StopPointRef>
</LocationRef>
<DepArrTime>2018-10-09T08:05:51</DepArrTime>
</Origin>
<Destination>
<LocationRef>
<StopPointRef>8500322</StopPointRef>
</LocationRef>
<DepArrTime>2018-10-09T08:05:51</DepArrTime>
</Destination>
<Params>
<NumberOfResults>1</NumberOfResults>
<IncludeTrackSections>true</IncludeTrackSections>
<IncludeLegProjection>true</IncludeLegProjection>
<IncludeIntermediateStops>true</IncludeIntermediateStops>
</Params>
</TripRequest>
</RequestPayload>
</ServiceRequest>
</Trias>
如何在 C# 中为 xmlns:siri 建模?我的班级看起来像这样:
[XmlRoot(nameof(Trias), Namespace = "http://www.vdv.de/trias")]
public class Trias
{
[XmlAttribute("version")]
public string Version { get; set; }
[XmlAttribute("xmlns")]
public string Xmlns { get; set; }
[XmlAttribute("siri")]
public string Siri { get; set; }
}
【问题讨论】:
-
请添加您的相关 xml bcoz 发布的 xml 不足以解决您的问题
-
试试这个 =>
[XmlAttribute(Namespace="http://www.siri.org.uk/siri")] public string Siri { get; set; } -
谢谢,序列化现在可以工作了,但是反序列化仍然不行。但我现在才意识到我不需要反序列化这些信息
-
所以我可以添加这个作为你的问题的答案吗?然后你在答案旁边打勾并投票:)
-
遗憾的是,您不能将 cmets 标记为答案,但我确实赞成 ;)
标签: c# xml serialization