public void RunCardApp() { //для клонирования var card1 = new Card("23", 23423, 1); card1.AddContact(new EmailContact("123", "2342")); var card2 = (Card)card1.Clone(); card1.ContactsList[0].Name = "2345"; Console.WriteLine(card1.Print()); Console.WriteLine(card2.Print()); var cardList = new List<Card>(); long id = 0; //основное меню var card = new Card(); while (true) { Console.WriteLine( "Выберите действие:\n0 - Создание новой карточки\n1 - Добавление контакта карточку\n2 - Вывод списка контактов на экран\n3 - Удаление выбранного контакта\n4 - Вывод информации о карточки в Xml\n5 - Выход"); try { var cardNumber = 0; switch (Convert.ToInt32(Console.ReadLine())) { case 0: cardList.Add(NewCard()); break; case 1: cardNumber = GetCardNumber(cardList); cardList[cardNumber].AddContact(NewContact()); break; case 2: cardNumber = GetCardNumber(cardList); Console.WriteLine(cardList[cardNumber].Print()); break; case 3: cardNumber = GetCardNumber(cardList); Console.WriteLine("Введите контакт для удаления "); if (cardList[cardNumber].DelContact(Console.ReadLine()) == false) Console.WriteLine("Такого контакта нет в списке"); break; case 4: cardNumber = GetCardNumber(cardList); Console.WriteLine(cardList[cardNumber].ToXml()); break; case 5: return; default: Console.WriteLine("\nТакой команды нет в списке\n"); break; } } catch (Exception e) { Console.WriteLine(e.Message); } } Console.ReadKey(); }
public void Lecture6_1() { var card = new Card(); var contactsList = card.ContactsList; var contact1 = new PhoneContact("Ivan", "383" + "." + "3963222"); card.AddContact(contact1); var contact2 = new PhoneContact("Mary", "913" + "." + "1233211"); card.AddContact(contact2); var contact3 = new EmailContact("Ars", "*****@*****.**"); card.AddContact(contact3); const string path = "contacts.txt"; StreamWriter sw = new StreamWriter(path); foreach (Contact item in contactsList) { sw.WriteLine(item.ToString()); } sw.Close(); using (StreamReader sr = new StreamReader(path)) { String line = sr.ReadToEnd(); Console.WriteLine(line); sr.Close(); } Console.ReadKey(); }