Ошибка считывания из xml файла - C#
Формулировка задачи:
при работе приложения возникает ошибка "Необработанное исключение типа "System.NullReferenceException" Дополнительные сведения: Ссылка на объект не указывает на экземпляр объекта"
private void List_SelectionChanged(object sender, SelectionChangedEventArgs e) { ListBox list = (ListBox)sender; Taask task =(Taask)list.SelectedItem; XDocument doc = XDocument.Load(@"XMLBAS.xml"); foreach (var testElement in doc.Root.Elements()) { if (testElement.Attribute("Name").Value == task.name && testElement.Attribute("Author").Value == task.author && testElement.Attribute("Qestions").Value == task.qestions) { foreach (var questionElement in testElement.Elements()) //ошибка { task.answers.Add(questionElement.Attribute("ans").Value); task.qestion.Add(questionElement.Attribute("qes").Value); } } } Window4 win = new Window4(task); win.Show(); Close(); }
<?xml version="1.0" encoding="utf-8" ?> <tasks> <test Name="Электорнные таблицы" Author="Кирилл Скофенко" Qestions="9"> <question ans="6" qes="Чему будет равно значение ячейки С2?" /> <question ans="180" qes="По данным электронной таблицы определите значение в ячейке С3 после копирования в нее формулы из ячейки С1"/> <question ans="F12" qes="Выберите верный адрес ячейки в электронной таблице:"/> </test> <test Name="123" Author="Кирилл Скофенко" Qestions="4"></test> </tasks>
Решение задачи: «Ошибка считывания из xml файла»
textual
Листинг программы
private void List_SelectionChanged(object sender, SelectionChangedEventArgs e) { ListBox list = (ListBox)sender; Taask task =(Taask)list.SelectedItem; XDocument doc = XDocument.Load(@"XMLBAS.xml"); if (task != null) { foreach (var testElement in doc.Root.Elements()) { if (testElement.Attribute("Name").Value == task.name && testElement.Attribute("Author").Value == task.author && testElement.Attribute("Qestions").Value == task.qestions) { foreach (var questionElement in testElement.Elements()) //ошибка { task.answers.Add(questionElement.Attribute("ans").Value); task.qestion.Add(questionElement.Attribute("qes").Value); } } } Window4 win = new Window4(task); win.Show(); Close(); }
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д