0
こんにちは、XMLファイルをオブジェクトにデシリアライズしようとしていますが、値が得られません。クラスモデルに問題があると思います。 私はそれを実行すると、結果のオブジェクトにデータが入力されません。C#でオブジェクトをXMLに逆シリアル化する際のデータがありません
XDocument test = XDocument.Load(UrlAdrress);
var result = XMLHelper.FromXML<XmlSportsModel>(test);
構造は、ここに私のxmlのように見えると私はそれを変更傾けるある
正しいです。 XMLFile
マイデシリアライザ
public static class XMLHelper
{
public static T FromXML<T>(XDocument data)
{
var xmlSerializer = new XmlSerializer(typeof(T));
using (var reader = data.CreateReader())
{
return (T)xmlSerializer.Deserialize(reader);
}
}
}
マイモデル
[XmlRoot("XmlSports")]
public class XmlSportsModel
{
[XmlElement("Sport")]
public SportModel[] Sports { get; set; }
}
public class SportModel
{
[XmlElement(ElementName = "Name")]
public string Name { get; set; }
[XmlElement(ElementName = "ID")]
public string Id { get; set; }
[XmlElement(ElementName = "Event")]
public EventModel[] Events { get; set; }
}
public class EventModel
{
[XmlElement("Name")]
public string Name { get; set; }
[XmlElement("ID")]
public int Id { get; set; }
[XmlElement("CategoryID")]
public int CategoryId { get; set; }
[XmlElement("IsLive")]
public bool IsLive { get; set; }
[XmlElement("Match")]
public MatchModel[] Matches { get; set; }
}
public class MatchModel
{
[XmlElement("Name")]
public string Name { get; set; }
[XmlElement("ID")]
public int Id { get; set; }
[XmlElement("StartDate")]
public DateTime StartDate { get; set; }
[XmlElement("MatchType")]
public MatchType Matchtype { get; set; }
[XmlElement("Bet")]
public BetModel[] Bets { get; set; }
}
public enum MatchType
{
PreMatch,
Live
}
が、私はそれを試みたが、動作していないよう:
そして、使用されるコードだけでした。 https://msdn.microsoft.com/en-us/library/hh371548(v=vs.110).aspx – Prabulg
私は実際にあなたのクラスとあなたのコードとVisual Studio 2015で貼り付けたXMLの結果を使用していました。私はあなたの質問からコピーしたので、コードを貼り付けることさえできません。 –
ええ、私はVS2015でペーストすることができたので、今ではバグが分かりました。 – Prabulg