Ошибка при создании файла XML - C#

Узнай цену своей работы

Формулировка задачи:

Добрый день, пытаюсь на основе List'а своего класса Software создать XML-файл и получаю непонятную ошибку. Код класса:
[Serializable]
[XmlRoot("Software")]
public class Software : ICloneable, IEquatable<Software>, IComparer<Software>, IComparable<Software>
{
    [XmlAttribute("SoftwareId")]
    public int SoftwareId { get; set; }
    [XmlAttribute("SoftwareName")]
    public string SoftwareName { get; set; }
    [XmlAttribute("DeveloperName")]
    public string DeveloperName { get; set; }
 
    public Software() { }
 
    public Software(int id, string softnm, string devnm)
    {
        SoftwareId = id;
        SoftwareName = softnm;
        DeveloperName = devnm;
     }
}
Код класса, который содержит List<Software>
public class SoftwareList
{
    [XmlArray("SoftList"), XmlArrayItem(typeof(Software), ElementName = "Software")]
    public List<Software> SoftList { get; set; }
}
Код по созданию XML-файла
public static SoftwareList softList = new SoftwareList();
Dictionary<int, Software> softwareDictionary = new Dictionary<int, Software>();
 
public Form1()
{
    InitializeComponent();
    softList.SoftList = new List<Software>();
    softList.SoftList.Add(new ParshinLR6.Software { SoftwareId = 1, SoftwareName = "ASF", DeveloperName = "ASF" });
    softList.SoftList.Add(new ParshinLR6.Software { SoftwareId = 2, SoftwareName = "ASF2", DeveloperName = "ASF2" });
    softList.SoftList.Add(new ParshinLR6.Software { SoftwareId = 3, SoftwareName = "ASF3", DeveloperName = "ASF3" });
    softList.SoftList.Add(new ParshinLR6.Software { SoftwareId = 4, SoftwareName = "ASF4", DeveloperName = "ASF4" });
    softList.SoftList.Add(new ParshinLR6.Software { SoftwareId = 5, SoftwareName = "ASF5", DeveloperName = "ASF5" });
    saveListToFile("Software.xml");
    ListToListView();
 
    public void saveListToFile(string filename)
    {
        using (FileStream fs = new FileStream(filename, FileMode.Create, FileAccess.Write))
        {
            XmlSerializer xs = new XmlSerializer(typeof(Software));
            xs.Serialize(fs, softList.SoftList);
        }            
    }
}

Решение задачи: «Ошибка при создании файла XML»

textual
Листинг программы
XmlSerializer xs = new XmlSerializer(typeof(SoftwareList));
xs.Serialize(fs, softList);

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

5   голосов , оценка 3.8 из 5
Похожие ответы