Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/file/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 在Windows 8.1应用商店中从字符串转换为对象_C#_Xml_Xml Serialization_Deserialization_Windows 8.1 - Fatal编程技术网

C# 在Windows 8.1应用商店中从字符串转换为对象

C# 在Windows 8.1应用商店中从字符串转换为对象,c#,xml,xml-serialization,deserialization,windows-8.1,C#,Xml,Xml Serialization,Deserialization,Windows 8.1,我想将字符串转换为具有值的对象。我的意思是,假设我有一个包含XML代码的字符串,比如: string response = @"<?xml version=""1.0"" encoding=""utf-8""?> <Response> <ResultCode>0</ResultCode> <ResultMessage>success</ResultMessage> <Body> <Rooms>

我想将字符串转换为具有值的对象。我的意思是,假设我有一个包含XML代码的字符串,比如:

string response = @"<?xml version=""1.0"" encoding=""utf-8""?>
<Response>
<ResultCode>0</ResultCode>
<ResultMessage>success</ResultMessage>
<Body>
<Rooms>
        <Room>
              <RoomID>room1@nxdev.com</RoomID>
              <RoomName>White Room</RoomName>
              <Capacity>10</Capicity>
              <Equipments>Beam Projector, VTR</Equipments>
              <Reservations>
                   <Reservation>
                        <StartDT> 2014-02-18 14:00</StartDT>
                        <EndDT>2014-02-18 15:00</EndDT>
                        <UserName>Jhon</UserName>
                        <Subject>Project Meeting</Subject>
                   <Reservation>
              </Reservatoins>
        </Room>
    </Rooms>
</Body>
</Response>"
string-response=@”
0
成功
room1@nxdev.com
白色房间
10
光束投影仪
2014-02-18 14:00
2014-02-18 15:00
约翰
项目会议
"
我有一个类,它具有Xml中提到的所有属性,比如

[XmlRoot("Response")]
public class Response 
{
    string ResultCode {get; set; }
    string ResutlMessage { get; set; }
}

public class RoomListResponse : Response
{
   List<Room> rooms { get; set; }
}

public class Room
{
   [XmlElement("RoomID")]
   string RoomID { get; set; }

   [XmlElement("RoomName")]
   string RoomName { get; set; }

   [XmlElement("Capacity")]
   string Capacity { get; set; }

   [XmlElement("Equipments")]
   string Equipments { get; set; } 

   List<Reservation> Reservations;
}
public class Reservations
{
   [XmlElement("StartDT")]
   string StartDT { get; set; } 
   [XmlElement("EndDT")]
   string EndDT { get; set; } 
   [XmlElement("UserName")]
   string UserName { get; set; } 
   [XmlElement("Subject")]
   string Subject { get; set; } 
}
[XmlRoot(“响应”)]
公众课堂反应
{
字符串结果代码{get;set;}
字符串ResutlMessage{get;set;}
}
公共类RoomListResponse:Response
{
列出房间{get;set;}
}
公共教室
{
[XmlElement(“房间ID”)]
字符串RoomID{get;set;}
[XmlElement(“RoomName”)]
字符串RoomName{get;set;}
[XmlElement(“容量”)]
字符串容量{get;set;}
[XmlElement(“设备”)]
字符串设备{get;set;}
列出保留;
}
公务舱预订
{
[XmlElement(“StartDT”)]
字符串StartDT{get;set;}
[XmlElement(“EndDT”)]
字符串EndDT{get;set;}
[XmlElement(“用户名”)]
字符串用户名{get;set;}
[XmlElement(“主题”)]
字符串主题{get;set;}
}
如何在没有字符串解析的情况下设置RoomListResponse对象中的所有值?我尝试过序列化,但由于API的限制,它在windows 8.1应用商店项目中给了我一些问题


有什么方法可以把它分类吗?

序列化是唯一的方法

在您的情况下,您可能需要尝试更换

List<Reservation> Reservations;
然后使用XmlSerializer

[XmlElement("Reservations")]
Reservation [] Reservations;