private static void Main(string[] args) { Book[] books = { new Book("978-0-7356-6745-7", "Jeffrey Richter", "CLR via C#", "Microsoft Press", 2012, 826, 59.99), new Book("1678995", "author2", "name2", "publishingHouse2", 2016, 500, 30.151), new Book("234577777", "author3", "name3", "publishingHouse3", 2014, 500, 30.15), new Book("234577777", "author3", "name3", "publishingHouse3", 2014, 500, 30.15) }; Console.WriteLine(books[0].ToString("ANT")); Console.WriteLine(books[0].ToString("IFIANTPYPP")); Console.WriteLine(books[0].ToString("ANTPY")); Console.WriteLine(books[0].ToString("IFIANTPYPPP")); BookListService service = new BookListService(); ////service.AddBook(books[0],books[1]); service.AddBook(books[0]); service.AddBook(books[1]); service.AddBook(books[2]); service.AddBook(books[3]); Console.WriteLine("Are equal: " + Equals(service.GetBookList()[0], service.GetBookList()[1])); Console.WriteLine("Are equal: " + Equals(service.GetBookList()[2], service.GetBookList()[3])); Console.WriteLine(service.FindBookByTag(new FinderByMaxPrice())); Console.WriteLine(service.FindBookByTag(new FinderByMinPrice())); Console.WriteLine(service.FindBookByTag(new FinderByPublishingYearAndAuthor(2016, "author3"))); service.SortBooksByTag(new ComparerByDecPrice()); service.ShowBookList(); service.SortBooksByTag(new ComparerByDecPublishingYear()); service.ShowBookList(); service.SortBooksByTag(new ComparerByIncPrice()); service.ShowBookList(); service.RemoveBook(books[2]); service.ShowBookList(); service.RemoveBook(1678995); service.ShowBookList(); Console.WriteLine("Write to binary file"); IBookListStorage binaryStorage = new BookListBinaryFileStorage(); service.SetBookListToStorage(binaryStorage); Console.WriteLine("Read from binary file"); BookListService newService = new BookListService(); newService.GetBookListFromStorage(binaryStorage); for (int i = 0; i < newService.GetBookList().Count; i++) { Console.WriteLine(newService.GetBookList()[i]); } Console.ReadLine(); }
public static void Main(string[] args) { BookListService bookService = new BookListService(); bookService.AddBook(new Book("1234567891011", "Идиот", "Достоевский Ф.М", "Азбука", "2012", 700, 9.01m)); bookService.AddBook(new Book("555534", "Доктор Живаго", "Борис Пастернак", "Азбука", "2013", 7700, 12)); bookService.AddBook(new Book("ASDA21", "Малое собрание сочинений", "Антон Чехов", "Неизвестное", "2010", 90, 15)); bookService.AddBook(new Book("2423DAA", "Евгений Онегин", "Александр Пушкин", "Известное", "1995", 88, 13)); BookListBinaryFileStorage binaryFile = new BookListBinaryFileStorage(@"e:\GitHub\Training.-Spring-2018\NET.S.2018.Belyi.11\BookLibraryApplication\BinaryBookStorage"); bookService.SaveToStorage(binaryFile); bookService.AddBook(new Book("2423Ddsa", "CCC2", "AFTOR2", "QWERTY", "1995", 88, 90)); bookService.LoadFromStorage(binaryFile); foreach (Book b in bookService.BookList) { Console.WriteLine(b.ToString()); } Console.WriteLine("\nCортировка по цене:\n"); bookService.SortBooksListByTag(new Comparators.PriceComparer()); foreach (Book b in bookService.BookList) { Console.WriteLine(b.ToString("ISBN", CultureInfo.InvariantCulture)); Console.WriteLine(b.ToString("FULL", CultureInfo.InvariantCulture)); } Console.WriteLine("\nCортировка по названию:\n"); bookService.SortBooksListByTag(new Comparators.NameComparer()); foreach (Book b in bookService.BookList) { Console.WriteLine(b.ToString()); } CustomFormatProvider custom = new CustomFormatProvider(); Console.WriteLine("\nПоиск по имени Антон Чехов:\n"); Console.WriteLine(bookService.FindBookByTag(new Tags.TitlePredicate("Антон Чехов")).ToString("G", custom)); }