我想讀取一個XML並轉換JSON,然後將該JSON轉換爲一個C#對象。 請記住,我可以使用linq來初始化對象,我知道這一點。 但是我想實現的是讀取xml將其轉換爲json並從轉換後的字符串反序列化爲對象。我無法正確初始化對象。 我錯過了什麼?C#Newton.Json反序列化
public class Cash
{
public string Amount { get; set; }
}
public class POSLog
{
public string MajorVersion { get; set; }
public string MinorVersion { get; set; }
public string FixVersionive { get; set; }
public Cash Cashx { get; set; }
}
public class Program
{
public static void Main(string[] args)
{
try
{
XmlDocument xml = new XmlDocument();
xml.LoadXml("<POSLog MajorVersion=\"6\" MinorVersion=\"0\" FixVersion=\"0\"><Cash Amount = \"100\"></Cash></POSLog>");
string json = JsonConvert.SerializeObject(xml.InnerXml);
POSLog deserializedProduct = JsonConvert.DeserializeObject<POSLog>(json);
Console.WriteLine("Major Version" + deserializedProduct.MajorVersion);
}
catch (Exception ex)
{
Console.WriteLine(ex.Message);
}
}
}
爲什麼不直接從xml轉換爲對象? – Nkosi
它是否正確地序列化你的json? –
您還將'POSLog'中的變量命名爲'FixVersionive',它與XML中的命名不匹配。 – KDecker