Tôi nhận được một InvalidOperationException khi cố gắng phản ánh thuộc tính "danh sách", như được nói bởi ngoại lệ bên trong. Khi nó cố gắng serialize ArmyListing.InvalidOperationException khi nối tiếp
Tất cả các biến là công khai. Danh sách được kiểm tra có thể được đăng. Hầu hết các lỗi tôi tìm thấy ở đâu với những người sử dụng Từ điển không thể.
Bất kỳ ý tưởng nào tại sao nó xuất hiện không thể được nối tiếp?
//[Serializable]
public class ArmyListing
{
[XmlElement("army")]
public List<Army> listing { get; set; }
public void SerializeToXML(ArmyListing armyListing)
{
try
{
XmlSerializer serializer = new XmlSerializer(typeof(ArmyListing));
TextWriter textWriter = new StreamWriter(@"C:\Test\40k.xml");
serializer.Serialize(textWriter, armyListing);
textWriter.Close();
}
catch (Exception ex) { }
}
}
//[Serializable]
public class Army
{
//public Army();
[XmlAttribute]
[XmlArray("unit-category")]
public List<UnitCategory> settingconstraints { get; set; }
[XmlAttribute("name")]
public string armyName { get; set; }
}
//[Serializable]
public class UnitCategory
{
//public UnitCategory();
[XmlArray("unit-type")]
public List<UnitType> setting { get; set; }
[XmlAttribute("name")]
public string unitCategoryName { get; set; }
}
//[Serializable]
public class UnitType
{
//public UnitType();
[XmlArray("unit")]
public List<Unit> setting { get; set; }
[XmlAttribute("name")]
public string unitTypeName { get; set; }
}
//[Serializable]
public class Unit
{
//public Unit();
[XmlAttribute("name")]
public string unitName { get; set; }
[XmlAttribute("composition")]
public string compsition { get; set; }
[XmlAttribute("weapon-skill")]
public string weaponSkill { get; set; }
[XmlAttribute("ballistic-skill")]
public string ballisticSkill { get; set; }
[XmlAttribute("strength")]
public string strength { get; set; }
[XmlAttribute("toughness")]
public string T { get; set; }
[XmlAttribute("wounds")]
public string wounds { get; set; }
[XmlAttribute("initiative")]
public string initiative { get; set; }
[XmlAttribute("attacks")]
public string attacks { get; set; }
[XmlAttribute("leadership")]
public string leadership { get; set; }
[XmlAttribute("saving-throw")]
public string saveThrow { get; set; }
[XmlAttribute("armour")]
public string armour { get; set; }
[XmlAttribute("weapons")]
public string weapons { get; set; }
[XmlAttribute("special-rules")]
public string specialRules { get; set; }
[XmlAttribute("dedicated-transport")]
public string dedicatedTransport { get; set; }
[XmlAttribute("options")]
public string options { get; set; }
}
//Form
namespace ThereIsOnlyRules
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
private void button1_Click(object sender, EventArgs e)
{
ArmyListing armyListing = new ArmyListing();
armyListing.SerializeToXML(armyListing);
}
}
}
+1 cho tài liệu tham khảo Warhammer40k^_ ^! –