KEY: Message,VALUE: <OTA_InventoryCheckRS TimeStamp="1629879848173" Version="1.000" EchoToken="18029461-194a-4c7e-b372-6eec346cebd4"> <HotelResult> <HotelID>10000007</HotelID> <HotelProducts> <HotelProduct> <!--只有支持30分钟免费取消的酒店,才需要返回该节点--> <FreeCancelable FreeCancelableVal="true"\ /> <RoomTypes> <RoomType RoomTypeCode="2106"/> </RoomTypes> <RatePlans> <RatePlan RatePlanCode="302-4529"/> </RatePlans> <Prices> <Price> <Base EffectDate="2021-08-25" SalePrice="515.2" BasePrice="515.2" Allotment="53" DcOverSaleAllotment="53" DcAddAllotment="-1" DcContractAllotment="-1" DcBuyOutAllotment="-1"/> </Price> </Prices> </HotelProduct> </HotelProducts> </HotelResult> </OTA_InventoryCheckRS>转成.net core实体模型返回
时间: 2023-07-02 15:21:18 浏览: 173
以下是将XML转换为.NET Core实体模型的代码示例:
```csharp
using System.Xml.Serialization;
[XmlRoot(ElementName = "OTA_InventoryCheckRS")]
public class InventoryCheckResponse
{
[XmlAttribute(AttributeName = "TimeStamp")]
public string TimeStamp { get; set; }
[XmlAttribute(AttributeName = "Version")]
public string Version { get; set; }
[XmlAttribute(AttributeName = "EchoToken")]
public string EchoToken { get; set; }
[XmlElement(ElementName = "HotelResult")]
public HotelResult HotelResult { get; set; }
}
public class HotelResult
{
[XmlElement(ElementName = "HotelID")]
public string HotelID { get; set; }
[XmlElement(ElementName = "HotelProducts")]
public HotelProducts HotelProducts { get; set; }
}
public class HotelProducts
{
[XmlElement(ElementName = "HotelProduct")]
public HotelProduct HotelProduct { get; set; }
}
public class HotelProduct
{
[XmlElement(ElementName = "FreeCancelable")]
public FreeCancelable FreeCancelable { get; set; }
[XmlElement(ElementName = "RoomTypes")]
public RoomTypes RoomTypes { get; set; }
[XmlElement(ElementName = "RatePlans")]
public RatePlans RatePlans { get; set; }
[XmlElement(ElementName = "Prices")]
public Prices Prices { get; set; }
}
public class FreeCancelable
{
[XmlAttribute(AttributeName = "FreeCancelableVal")]
public string FreeCancelableVal { get; set; }
}
public class RoomTypes
{
[XmlElement(ElementName = "RoomType")]
public RoomType RoomType { get; set; }
}
public class RoomType
{
[XmlAttribute(AttributeName = "RoomTypeCode")]
public string RoomTypeCode { get; set; }
}
public class RatePlans
{
[XmlElement(ElementName = "RatePlan")]
public RatePlan RatePlan { get; set; }
}
public class RatePlan
{
[XmlAttribute(AttributeName = "RatePlanCode")]
public string RatePlanCode { get; set; }
}
public class Prices
{
[XmlElement(ElementName = "Price")]
public Price Price { get; set; }
}
public class Price
{
[XmlElement(ElementName = "Base")]
public Base Base { get; set; }
}
public class Base
{
[XmlAttribute(AttributeName = "EffectDate")]
public string EffectDate { get; set; }
[XmlAttribute(AttributeName = "SalePrice")]
public string SalePrice { get; set; }
[XmlAttribute(AttributeName = "BasePrice")]
public string BasePrice { get; set; }
[XmlAttribute(AttributeName = "Allotment")]
public string Allotment { get; set; }
[XmlAttribute(AttributeName = "DcOverSaleAllotment")]
public string DcOverSaleAllotment { get; set; }
[XmlAttribute(AttributeName = "DcAddAllotment")]
public string DcAddAllotment { get; set; }
[XmlAttribute(AttributeName = "DcContractAllotment")]
public string DcContractAllotment { get; set; }
[XmlAttribute(AttributeName = "DcBuyOutAllotment")]
public string DcBuyOutAllotment { get; set; }
}
```
在调用方代码中,您可以使用以下代码将XML转换为.NET Core实体模型:
```csharp
string xml = "<OTA_InventoryCheckRS TimeStamp=\"1629879848173\" Version=\"1.000\" EchoToken=\"18029461-194a-4c7e-b372-6eec346cebd4\"> <HotelResult> <HotelID>10000007</HotelID> <HotelProducts> <HotelProduct> <!--只有支持30分钟免费取消的酒店,才需要返回该节点--> <FreeCancelable FreeCancelableVal=\"true\" /> <RoomTypes> <RoomType RoomTypeCode=\"2106\"/> </RoomTypes> <RatePlans> <RatePlan RatePlanCode=\"302-4529\"/> </RatePlans> <Prices> <Price> <Base EffectDate=\"2021-08-25\" SalePrice=\"515.2\" BasePrice=\"515.2\" Allotment=\"53\" DcOverSaleAllotment=\"53\" DcAddAllotment=\"-1\" DcContractAllotment=\"-1\" DcBuyOutAllotment=\"-1\"/> </Price> </Prices> </HotelProduct> </HotelProducts> </HotelResult> </OTA_InventoryCheckRS>";
XmlSerializer serializer = new XmlSerializer(typeof(InventoryCheckResponse));
using StringReader reader = new StringReader(xml);
InventoryCheckResponse response = (InventoryCheckResponse)serializer.Deserialize(reader);
```
阅读全文
相关推荐
















