Разработать консольное приложение с XML базой данных. Тема: музыкальная библиотека - C#
Формулировка задачи:
1 Разработать структуру файла XML для хранения информации об объектах предметной области.
2. Разработать DTD или Schema XML (по выбору студента) для созданного файла XML.
3. Разработать консольное приложение на языке C# для обработки информации, хранящейся в файле XML. Приложение должно предоставлять пользователю меню с возможностью просмотра, добавления, удаления и изменения информации, хранящейся в файле XML. Приложение должно дружественно реагировать на ошибки ввода пользователя (при неправильном вводе должно выдаваться сообщение и предоставляться возможность ввести информацию заново).
Тема: музыкальная библиотека (исполнитель, жанр, альбом, год, страна, год выхода)
Решение задачи: «Разработать консольное приложение с XML базой данных. Тема: музыкальная библиотека»
textual
Листинг программы
using System;
using System.Xml.Linq;
namespace XMLSolve
{
class Program
{
public static void Main(string[] args)
{
InitXML();
ReadXML();
Console.Write("Press any key to continue . . . ");
Console.ReadKey(true);
}
public static void InitXML()
{
string PATHTOFILE=@"LIB.xml";
XDocument doc = new XDocument();
XElement library = new XElement("LIBRARY");
doc.Add(library);
XElement artist = new XElement("ARTIST");
artist.Add(new XAttribute("Name","NAME"));
artist.Add(new XAttribute("Country","COUNTRY"));
doc.Root.Add(artist);
//
XElement album = new XElement("ALBUME");
album.Add(new XAttribute("Name","NAME"));
album.Add(new XAttribute("Style","STYLE"));
album.Add(new XAttribute("Data","12.12.12"));
artist.Add(album);
doc.Save(PATHTOFILE);
}
public static void ReadXML()
{
string fileName = @"LIB.xml";
XDocument doc = XDocument.Load(fileName);
foreach(XElement el in doc.Root.Elements())
{
foreach(XElement element in el.Elements())
Console.WriteLine("++{0}={1}", element.Name,element.Value);
Console.WriteLine("{0}",el.Name);
foreach(XAttribute attr in el.Attributes())
Console.WriteLine("--{0}--{1}",attr.Name,attr.Value);
}
}
}
}