Exemplo n.º 1
0
        static void Main(string[] args)
        {
            List <Book> test = new List <Book>()
            {
                new Book("clr Via c#", "Richter", "program", 2015, 6),
                new Book("Net pro perfomance", "Goldshtein", "program", 2016, 5),
                new Book("Solaris", "Lem", "Fantastic", 1961, 1),
            };
            BookListService bookService = new BookListService(test, null);

            bookService.AddBook(new Book("test", "testAuthor", "testGenre", 2000, 1));
            SerializeStorage serStorage = new SerializeStorage(@"C:\OldbooksStorage.txt", null);
            NoSerXMLStorage  XMLstorage = new NoSerXMLStorage(@"C:\NewXMLstorage.xml", null);
            XMLstorage       xmlStorage = new XMLstorage(@"C:\NewbooksStorage.txt", null);
            BookStorage      storage    = new BookStorage(@"C:\NewbooksStorage.txt", null);

            bookService.SaveToRepo(xmlStorage);
            bookService.SaveToRepo(serStorage);
            bookService.SaveToRepo(storage);
            bookService.SaveToRepo(XMLstorage);
            BookListService testXml = new BookListService(xmlStorage.Load(), null);
            BookListService testSer = new BookListService(serStorage.Load(), null);
            BookListService testOld = new BookListService(storage.Load(), null);
            BookListService testXML = new BookListService(XMLstorage.Load(), null);

            Console.ReadLine();
        }
        static void Main(string[] args)
        {
            Book book = new Book()
            {
                Author = "Алан Гинзберг", Title = "Вопль", ISBN = 226611156, Gerne = "Поэма"
            };
            Book book1 = new Book()
            {
                Author = "Алан Гинзберг", Title = "Вопль", ISBN = 226611156, Gerne = "Поэма"
            };

            Console.WriteLine(book.Equals(book1));

            BookListService bookService = new BookListService();

            //bookService.AddBook(new Book() { Author = "Алан Гинзберг", Title = "Вопль", ISBN = 226611156, Gerne = "Поэма" });
            //bookService.AddBook(new Book() { Author = "Джек Керуак", Title = "В дороге", ISBN = 226611157, Gerne = "Роман" });

            var bookList = bookService.GetAllBooks();

            Console.WriteLine(bookList.ToArray()[0]);
            Console.WriteLine(bookList.ToArray()[1]);



            Console.ReadKey();
        }
Exemplo n.º 3
0
        static void Main(string[] args)
        {
            BookListService booksBinaryReader = new BookListService(new BinaryReaderRepository("BooksList.dat"));

            Console.WriteLine("BinaryReaderRepository:");
            foreach (Book b in booksBinaryReader)
                Console.WriteLine(b);
            Console.WriteLine();

            Console.WriteLine("BinaryReaderRepository sort:");
            booksBinaryReader.SortBooksByTag(new ComparableBook());
            foreach (Book b in booksBinaryReader)
                Console.WriteLine(b);
            Console.WriteLine();

            Console.WriteLine("XmlRepository:");
            BookListService booksXml = new BookListService(new XmlRepository("BooksList.xml"));
            foreach (Book b in booksXml)
                Console.WriteLine(b);
            Console.WriteLine();

            Console.WriteLine("Linq2XmlRepository:");
            BookListService booksLinq2Xml = new BookListService(new Linq2XmlRepository("BooksList.xml"));
            foreach (Book b in booksLinq2Xml)
                Console.WriteLine(b);
            
            Console.ReadKey();
        }
Exemplo n.º 4
0
        private static void BookListServiceTest()
        {
            var books = new List <Book>
            {
                new Book("999-9-99-999999-0", "Тепляков С.", "Паттерны проектирования", "publisher1", 2015, 312, 15.20d),
                new Book("999-9-99-999999-1", "Bart De Smet", "C# 4.0 Unleashed", "publisher2", 2010, 1605, 35.99d)
            };

            var bookListService = new BookListService(books);

            bookListService.Logger = new NLogger(nameof(BookListService));
            PrintBooks(bookListService.GetBooks());

            bookListService.AddBook(new Book("999-9-99-999999-2", "Jon Skeet", "C# in Depth. Third edition", "publisher3", 2014, 582, 25.99d));
            PrintBooks(bookListService.GetBooks());

            bookListService.SortBooksByTag(new TitleComparer());
            PrintBooks(bookListService.GetBooks());

            bookListService.RemoveBook(new Book("999-9-99-999999-1", "Bart De Smet", "C# 4.0 Unleashed", "publisher2", 2010, 1605, 35.99d));
            PrintBooks(bookListService.GetBooks());

            Console.WriteLine(bookListService.FindBookByTag(new IsTitleValid("C#")));
            Console.WriteLine();

            bookListService.Save(new BinaryFileStorage("books"));
        }
Exemplo n.º 5
0
        static void Main(string[] args)
        {
            var bookListService = new BookListService();

            bookListService.AddBook(new Book()
            {
                ISBN                = 1337,
                Author              = "Author_1",
                Title               = "Title_1",
                PublishingHouse     = "PublishingHouse_1",
                TheYearOfPublishing = 1337,
                NumbersOfPage       = 1337,
                Price               = 1337
            });

            bookListService.AddBook(new Book()
            {
                ISBN                = 1608,
                Author              = "Author_2",
                Title               = "Title_2",
                PublishingHouse     = "PublishingHouse_2",
                TheYearOfPublishing = 1608,
                NumbersOfPage       = 1608,
                Price               = 1608
            });

            Console.WriteLine(bookListService.FindBookByTag(new FindBookByTitle("Title_2", bookListService.GetBooks(@"R:\states.txt"))));
            Console.WriteLine(bookListService.GetHashCode());
            Console.WriteLine(bookListService.Equals(bookListService.GetBooks(@"R:\states.txt")));

            bookListService.Save(@"R:\states.txt");
        }
 static void Main(string[] args)
 {
     BookListService bookListService= new BookListService();
     Book[] books = new Book[5];
     books[0] = new Book("Albahari", "C# in a nutshell", 2012, 1043);
     books[1] = new Book("Richter", "CLR via C#", 2013, 896);
     books[2] = new Book("Eckel", "Thinking in Java", 2009, 637);
     books[3] = new Book("Lorem", "Ipsum", 2005, 1024);
     books[4] = new Book("Dolor", "Sit Amet", 2015, 512);
     foreach (Book book in books)
     {
         bookListService.AddBook(book);
     }
     var bfs=new BinaryFormatterStorage();
     bookListService.SaveCollectionToStorage(bfs);
     var anotherBookListService = new BookListService();
     anotherBookListService.ReadCollectionFromStorage(bfs);
     var xmlStorage=new XmlStorage();
     anotherBookListService.SaveCollectionToStorage(xmlStorage);
     anotherBookListService.SaveCollectionToStorage(new Linq2XmlStorage());
     anotherBookListService.ReadCollectionFromStorage(new Linq2XmlStorage());
     foreach (var book in anotherBookListService.ToList())
     {
         Console.WriteLine(book);
     }
     Console.ReadKey();
 }
Exemplo n.º 7
0
        public static void Main(string[] args)
        {
            var bookStorage = new BookListStorage(@"H:\BookStorage.txt");
            var bookService = new BookListService(bookStorage);
            var newBook     = new Book()
            {
                Author = "Author", Cost = 20, ISBN = "346632436562", Name = "Book name", PagesNumber = 246, PublicationYear = 2000, Publisher = "Publisher name"
            };

            Console.WriteLine(bookService.AddBook(newBook));
            var booksList = bookService.GetAllBooks();

            newBook = new Book()
            {
                Author = "Author2", Cost = 20, ISBN = "123632436562", Name = "Book name 2", PagesNumber = 246, PublicationYear = 2000, Publisher = "Publisher name 2"
            };
            Console.WriteLine(bookService.AddBook(newBook));
            booksList = bookService.SortBooksByTag(SearchTags.ISBN);
            var searchingResult = bookService.FindBooksByTag(SearchTags.ISBN, "123632436562");

            var bankAccountStorage = new BankAccountsRepository(@"H:\BankAccountStorage.txt");
            var bankAccountService = new BankAccountService(bankAccountStorage);
            var newBankAccount     = new BankAccount(1, "FirstName", "LastName", 20, 0, false, BankAccountTypes.Standart, 10);

            Console.WriteLine(bankAccountService.AddAccount(newBankAccount));
            newBankAccount = new BankAccount(2, "FirstName2", "LastName2", 22, 3, false, BankAccountTypes.Gold, 20);
            Console.WriteLine(bankAccountService.AddAccount(newBankAccount));
            var bankAccountsList = bankAccountService.GetAllBankAccounts();

            bankAccountService.TopUpInAnAccount(30, bankAccountsList.ToList()[0].AccountId);
            bankAccountService.DebitTheAccount(10, bankAccountsList.ToList()[1].AccountId);

            Console.ReadKey();
        }
Exemplo n.º 8
0
        static void Main(string[] args)
        {
            BookListStorage storage = new BookListStorage("file.bin");
            BookListService service = new BookListService();

            service.AddBook(new Book("78565121ad45q", "Author 1", "First book", "Publisher 1", 1990, 200));
            service.AddBook(new Book("845dbn454545c", "Author 2", "Second Book", "Publisher 2", 1996, 5));
            service.AddBook(new Book("7854dshj98985", "Author 3", "New book", "Publisher 3", 2000, 45));

            ListInput(service.BookList);

            service.WriteBooks(storage, service.BookList);

            service.AddBook(new Book("84564dhbhb545", "Author 4", "Last book", "Publisher 1", 1995, 60));
            ListInput(service.BookList);

            service.SortBooksByTag(new SortByTitleAsc());
            ListInput(service.BookList);

            Book findedBook = service.FindBookByTag(new FindBookByTitle("Second Book"));

            Console.WriteLine(findedBook);
            Console.WriteLine();

            service.ReadBooks(storage);
            ListInput(service.BookList);

            Console.ReadLine();
        }
Exemplo n.º 9
0
        static void Main(string[] args)
        {
            try
            {
                AppDomain.CurrentDomain.UnhandledException += OnUnhandledException;
                var bookService = new BookListService(logger);
                //bookService.AddBook(new Book("Dark Tower", "King", 1999, 30));
                //bookService.StoreBooksList(new BinaryBookListStorage("binaryStore", logger));

                var binaryBookListStorage = new BinaryBookListStorage("binaryStore", logger);
                bookService.LoadBooksList(binaryBookListStorage);
                foreach (var book in bookService.GetListOfBooks())
                {
                    Console.WriteLine(book.ToString());
                }
            }
            catch (BookListException ex)
            {
                logger.Warn("An error occured during removing or saving in BookListService.", ex.InnerException);
            }
            catch (Exception ex)
            {
                logger.Error(ex, "An error occured");
            }
        }
Exemplo n.º 10
0
        public static void Main(string[] args)
        {
            string _fileSource = @"D:\Test\BookStorage.txt";

            if (File.Exists(_fileSource))
            {
                File.Delete(_fileSource);
            }

            IBookListService <Book> _bookService = new BookListService(new BookListStorage(_fileSource));

            _bookService.AddBook(new ScientificBook("978-0735667457", "Richter", "CLR via C#", "O'REILlY", 2013, 896, 176));
            _bookService.AddBook(new ScientificBook("978-5-84592087-4", "Albahary", "C# in nutshell", "O'REILlY", 2017, 1040, 250));
            _bookService.AddBook(new ScientificBook("0-321-12742-0", "Fauler", "Architecture of corporate software applications", "Williams", 2006, 541, 90));
            _bookService.AddBook(new ScientificBook("978-1509304066", "Chambers", "ASP .Net Core application development", "Microsot Press", 2017, 464, 70));

            BookLogger.Debug("Tests");

            var books = _bookService.GetAllBooks();

            PrintArray(books);

            _bookService.AddBook(new ScientificBook("1111111", "Test", "Test", "Test", 2013, 896, 176));
            books = _bookService.GetAllBooks();
            PrintArray(books);

            books = _bookService.SortBookByTag(new YearComparer());
            PrintArray(books);

            _bookService.RemoveBook(new ScientificBook("1111111", "Test", "Test", "Test", 2013, 896, 176));
            books = _bookService.SortBookByTag(new YearComparer());
            PrintArray(books);

            Console.ReadLine();
        }
        static void Main(string[] args)
        {
            NLoggerAdapter  logger          = new NLoggerAdapter();
            BookListService bookListService = new BookListService(logger);

            bookListService.AddBook(new Book("Смок Беллью", "Джек Лондон", "ИФ \"LEAN\"", "Сначала он был Кристофер Беллью. В колледже он превратился в Криса Беллью. Позже..."));
            bookListService.AddBook(new Book("Книжный вор", "Маркус Зузак", "Эксмо", "Январь 1939 года. Германия. Страна, затаившая дыхание. Никогда еще у смерти не было столько работы..."));
            bookListService.AddBook(new Book("Повелитель мух", " Уильям Голдинг", "Астрель", "Светловолосый мальчик только что одолел последний спуск со скалы и теперь пробирался к лагуне..."));
            bookListService.AddBook(new Book("Три товапища", "Эрих Мария Ремарк", "Вагриус", " Небо было желтым, как латунь; его еще не закоптило дымом. За крышами фабрики оно светилось особенно сильно. Вот-вот должно было взойти солнце..."));
            bookListService.AddBook(new Book("Фиалки по средам", "Андре Моруа", "АСТ", "Лампы, освещавшие большую столовую, были затенены..."));
            bookListService.SortBookByTag(new BooksComparerByAuthor());
            BookListStorage         binaryStorage    = new BookListStorage();
            BinarySerializerStorage serializStrorage = new BinarySerializerStorage();
            XMLStorage xmlStorage = new XMLStorage();

            bookListService.SaveData(binaryStorage);
            bookListService.SaveData(serializStrorage);
            bookListService.SaveData(xmlStorage);
            bookListService = new BookListService(logger);
            bookListService.LoadData(binaryStorage);
            bookListService.LoadData(serializStrorage);
            bookListService.LoadData(xmlStorage);
            bookListService.AddBook(new Book("Стилист для снежного человека", "Дарья Донцова", "Эксмо", "Человек не способен лизнуть свой собственный локоть..."));
            Book toDelete = bookListService.FindBookByTag(new ComparableByName("Стилист для снежного человека"));

            bookListService.RemoveBook(toDelete);
            bookListService.SortBookByTag(new BooksComparerByText());
            bookListService.SaveData(binaryStorage);
            Console.WriteLine(bookListService.FindBookByTag(new ComparableByName("АСТ"))?.ToString());
            Console.ReadKey();
        }
Exemplo n.º 12
0
        public static void Main(string[] args)
        {
            string path = FilePathProvider.GetPath();
            BinaryBookListStorage storage = new BinaryBookListStorage(path);
            var books = CreateBooks();

            var service = new BookListService(books);

            Console.WriteLine("Books in book service: ");
            ShowBookCollection(service.Books);

            service.AddBook(new Book()
            {
                ISBN            = "num",
                Author          = "Author",
                Name            = "Name",
                PublishingHouse = "Publ",
                Year            = 1900,
                NumberOfPages   = 200,
                Price           = 25.3m
            });
            Console.WriteLine("After adding book: ");
            ShowBookCollection(service.Books);

            var book = service.FindBook(new SameYear(), 1900);

            Console.WriteLine("Book with year of publising - 1900: ");
            Console.WriteLine(book);
            Console.WriteLine(book.ToString("F"));

            service.RemoveBook(book);
            Console.WriteLine("After removing book: ");
            ShowBookCollection(service.Books);

            service.SortBooksByTag(new OrderByName());
            Console.WriteLine("Sort books by name: ");
            ShowBookCollection(service.Books);

            Book book1 = new Book()
            {
                ISBN            = "num",
                Author          = "Author",
                Name            = "Name",
                PublishingHouse = "Publ",
                Year            = 1900,
                NumberOfPages   = 200,
                Price           = 25.3m
            };

            var book2 = new Book()
            {
                ISBN            = "num",
                Author          = "Author",
                Name            = "Name",
                PublishingHouse = "Publ",
                Year            = 1900,
                NumberOfPages   = 200,
                Price           = 25.3m
            };
        }
Exemplo n.º 13
0
        static void Main(string[] args)
        {
            Book firstBook  = new Book("978-5-699-12014-7", "A", "Crime and Punishment", "Russian Gazette", 1866, 452, 28);
            Book secondBook = new Book("978-5-699-12014-7", "B", "Crime and Punishment", "Russian Gazette", 2014, 75, 30);
            Book thirdBook  = new Book("978-5-699-12014-4", "C", "Crime and Punishment", "Russian Gazette", 1943, 324, 25);
            Book fourthBook = new Book("978-5-699-12014-1", "D", "Crime and Punishment", "Russian Gazette", 2014, 132, 26);

            Collection <Book> books = new Collection <Book>();

            BookListService.AddBook(ref books, firstBook);
            BookListService.AddBook(ref books, secondBook);
            BookListService.AddBook(ref books, thirdBook);
            BookListService.AddBook(ref books, fourthBook);

            IComparer comparer = new SortAuthorDescending();

            BookListService.SortBookByTag(ref books, comparer);

            foreach (Book book in books)
            {
                Console.WriteLine(book.ToString());
            }

            Console.ReadKey();
        }
Exemplo n.º 14
0
 static void Main(string[] args)
 {
     try
     {
         logger.Trace("Начало работы программы");
         logger.Trace("Создание книг начато");
         Book a = new Book("Anna Korenina", "Tolstoy", 1878, "russian");
         Book b = new Book("Idiot", "Dostoevsky", 1868, "russian");
         Book c = new Book("Misery", "Stiven King", 1987, "english");
         Book d = new Book("It", "Stiven King", 1985, "english");
         logger.Trace("Создание книг завершено");
         BineryFileStorage data        = new BineryFileStorage();
         BookListService   dataService = new BookListService(data);
         logger.Trace("Добавление книг начато");
         dataService.AddBook(a);
         dataService.AddBook(b);
         dataService.AddBook(c);
         dataService.AddBook(d);
         logger.Trace("Добавление книг завершено");
         logger.Trace("Удаляется книга");
         dataService.RemoveBook(a);
         Show(data.Load());
         dataService.SortBooksByTag(BookListService.Tags.Year);
         Show(data.Load());
         Show(dataService.FindByTag(BookListService.Tags.Year, 1985));
     }
     catch (ArgumentException e)
     {
         logger.Error(e.ToString());
     }
 }
        static void RemoveBook(BookListService bls)
        {
            ShowStorage(bls);
            Console.WriteLine("Number of remove rec: ");
            int i = ReadInt();
            int j = 0;

            foreach (Book item in bls)
            {
                if (j == i)
                {
                    try
                    {
                        bls.RemoveBook(item);
                    }
                    catch (LogicBook.Exceptions.BookListServiceRemoveNotExistingItemException ex)
                    {
                        Console.WriteLine(ex.Message);
                        logger.Error(ex.Message);
                    }
                }
                j++;
            }
            ShowStorage(bls);
        }
Exemplo n.º 16
0
        public void Test_Book_Print_AuthorName()
        {
            string          expected = "Max,Dark1";
            BookListService actual   = new BookListService();

            Assert.AreEqual(expected, b1.GetAuthorName());
        }
Exemplo n.º 17
0
        public void Test_Book_Print_AuthorNamePrice()
        {
            string          expected = "Dark1, was writen by Max. Costs 100 \n ";
            BookListService actual   = new BookListService();

            Assert.AreEqual(expected, b1.GetAuthNamePrice());
        }
        static void Main(string[] args)
        {
            try
            {
                BookListStorage bookStorage = new BookListStorage("NewStorage.bin");
                BookListService bookService = new BookListService(bookStorage);

                bookService.AddBookToShop(new Book("978-3-16-123451-0", "Ivanov", "one", "Minsk", 2000, 1000, 100));
                bookService.AddBookToShop(new Book("978-3-16-123452-1", "Petrov", "two", "Gomel", 2001, 2000, 200));
                bookService.AddBookToShop(new Book("978-3-16-123453-2", "Glebov", "three", "Brest", 2002, 3000, 300));
                bookService.AddBookToShop(new Book("978-3-16-123454-3", "Arkhipov", "four", "Vitebsk", 2003, 4000, 400));

                var books = new List <Book>();
                books.Add(bookService.FindBook(new FindBookByName("one", bookService.GetAllBooks())));
                PrintBook(books);

                bookService.Sort(null);
                PrintBook(bookService.GetAllBooks());

                Console.WriteLine(books[0].ToString("2", CultureInfo.CurrentCulture));
                bookService.Save();
                Console.ReadKey();
            }
            catch (Exception ex)
            {
                Log.Write(ex);
            }
        }
Exemplo n.º 19
0
        public static void Main(string[] args)
        {
            BookListService service = new BookListService(new BookListStorage("D:\\Курсы\\file.txt"));

            service.AddBook(new Book("1", "Name1", "Author1", "Publisher1", 2010, 200, 10));
            service.AddBook(new Book("2", "Name2", "Author1", "Publisher1", 2010, 200, 10));
            service.AddBook(new Book("3", "Name3", "Author1", "Publisher1", 2010, 200, 10));
            service.AddBook(new Book("4", "Name4", "Author2", "Publisher1", 2010, 200, 10));
            service.AddBook(new Book("5", "Name5", "Author2", "Publisher1", 2010, 200, 10));
            service.AddBook(new Book("6", "Name1", "Author2", "Publisher1", 2010, 200, 10));
            service.AddBook(new Book("7", "Name8", "Author0", "Publisher1", 2010, 200, 10));
            service.AddBook(new Book("8", "Name7", "Author0", "Publisher1", 2010, 200, 10));
            service.AddBook(new Book("9", "Name1", "Author0", "Publisher1", 2010, 200, 10));

            // var list = service.FindBooksByTag(new FindBooksByAuthor("Author0"));
            // var list = service.FindBooksByTag(new FindBooksByName("Name1"));

            // var list = service.SortBooksByTag(new SortByAuthor());
            // var list = service.SortBooksByTag(new SortByName());
            // var list = service.SortBooksByTag(new SortByAuthorAndName());

            // service.RemoveBook(new Book("9", "Name1", "Author0", "Publisher1", 2010, 200, 10));
            // var list = service.BookList;
            service.PutBooksIntoStorage();
            BookListService newService = new BookListService(new BookListStorage("D:\\Курсы\\file.txt"));
            var             list       = newService.BookList;

            foreach (Book book in list)
            {
                Console.WriteLine(book.ToString());
            }

            Console.ReadKey();
        }
Exemplo n.º 20
0
        public void BookAlreadyInStorageExceptionTest()
        {
            FakeBookListStorage.books = new List <Book>()
            {
                new Book()
                {
                    Author           = "Рихтер Джеффри",
                    ISBN             = "978-5-496-00-433-6",
                    Title            = "CLR via C#",
                    PageCount        = 896,
                    Price            = 70,
                    PublicationYear  = 2014,
                    PublishingOffice = "Питер"
                }
            };

            var bookToAdd = new List <Book>()
            {
                new Book()
                {
                    Author           = "Рихтер Джеффри",
                    ISBN             = "978-5-496-00-433-6",
                    Title            = "CLR via C#",
                    PageCount        = 896,
                    Price            = 70,
                    PublicationYear  = 2014,
                    PublishingOffice = "Питер"
                }
            };

            var bookListService = new BookListService(new BookListStorage());

            Assert.Throws <Exceptions.BookAlreadyInStorageException>(() => bookListService.Add(bookToAdd));
        }
Exemplo n.º 21
0
        static void Main(string[] args)
        {
            Book b1 = new Book();

            b1.Name   = "aaaaaa";
            b1.Author = "a";
            b1.Pages  = 3;
            b1.Year   = 1045;
            Book b2 = new Book();

            b2.Name   = "ccccc";
            b2.Author = "c";
            b2.Pages  = 2;
            b2.Year   = 1055;
            Book b3 = new Book();

            b3.Name   = "bbbbb";
            b3.Author = "b";
            b3.Pages  = 4;
            b3.Year   = 1655;
            BookListService service = new BookListService();

            service.AddBook(b1);
            service.AddBook(b2);
            service.AddBook(b3);
            Console.WriteLine(service);
            service.SortBooksByTag(new ComparerByAuthor());
            Console.WriteLine(service);
        }
Exemplo n.º 22
0
        static void Main(string[] args)
        {
            BookListService books = new BookListService("test.txt");

            books.Show();

            try
            {
                books.AddBook(new Book { Author = "Author1", Title = "Title2", PublishingHouse = "House", Year = 1994 });
            }
            catch (BookException exc)
            {
                logger.Error(exc.Message, exc);
            }

            try
            {
                books.RemoveBook(new Book { Author = "Authorr", Title = "Title", PublishingHouse = "Publishing", Year = 1923 });
            }
            catch (BookException exc)
            {
                logger.Error(exc.Message, exc);
            }

            System.Console.WriteLine();
            books.Show();
        }
Exemplo n.º 23
0
        static void Main(string[] args)
        {
            Book            book1 = new Book("123-123", "pushkin", "slovo", "piter", "2018", 500, 100);
            Book            book2 = new Book("321-321", "lermontov", "borodino", "piter", "2016", 300, 300);
            Book            book3 = new Book("666-666", "gogol", "vij", "mosk", "1999", 102, 30);
            Book            book4 = new Book("666-666", "pushkin", "vij", "mosk", "1999", 102, 30);
            BookListService bls   = new BookListService();

            Console.WriteLine(book1.Equals(book1));
            Console.WriteLine(book1.Equals(book2));

            FileWorker fw = new FileWorker("C:/Users/Shumilin/Documents/Visual Studio 2017/Projects/NET.W.2018.Shumilin.8/file.txt");

            bls.Load(fw);

            //bls.AddBook(book1);
            //bls.AddBook(book2);
            //bls.AddBook(book1);
            //bls.AddBook(book3);
            //bls.RemoveBook(book1);

            //bls.Save(fw);

            Console.WriteLine(Book.Compare(book1, book2, new CompareByAuthor()));
            var t = bls.FindBookByTag(new FindByAuthor("123"));

            Console.WriteLine(t);

            //Console.WriteLine(book1.ToString());

            Console.ReadKey();
        }
        public ActionResult Submit(string Author, string ISBN, string Title, uint PageCount, decimal Price,
                                   int PublicationYear, string PublishingOffice)
        {
            var book = new Book()
            {
                Author           = Author,
                Title            = Title,
                ISBN             = ISBN,
                PublishingOffice = PublishingOffice,
                PublicationYear  = PublicationYear,
                Price            = Price,
                PageCount        = PageCount
            };

            var bookListStorage = new BookListStorage();
            var bookListService = new BookListService(bookListStorage);

            bookListService.Add(new List <Book>()
            {
                book
            });

            bookListStorage.Save(bookListService.Books);

            ViewBag.Response = "Book added to Book List!";
            return(View("AddBook"));
        }
Exemplo n.º 25
0
        static void Main(string[] args)
        {
            Book book = new Book("1111", "Title1", "Author1", "Publisher1", 20, 1975, 15f);

            var storage = new BookListStorage("ListBook.bin");
            var service = new BookListService(storage);

            service.AddBook(book);
            service.AddBook(new Book("3333", "Title2", "Author2", "Publisher2", 200, 1975, 18f));
            service.AddBook(new Book("5555", "Title3", "Author2", "Publisher2", 254, 1975, 18f));
            service.AddBook(new Book("4444", "Title5", "Author2", "Publisher2", 2, 1975, 18f));
            service.AddBook(new Book("55554", "Title2", "Author2", "Publisher2", 299, 1975, 18f));
            service.AddBook(new Book("34534", "Title6", "Author2", "Publisher2", 2000, 1975, 18f));
            service.AddBook(new Book("3333", "Title2", "Author6", "Publisher45", 200, 1975, 14f));
            service.AddBook(new Book("5555", "Title35", "Author2", "Publisher2", 254, 1975, 18f));
            service.AddBook(new Book("4444", "Title51", "Author34", "Publisher2", 2, 1975, 187f));
            service.AddBook(new Book("55554", "Title2", "Author65", "Publisher453", 299, 1975, 148f));
            service.AddBook(new Book("34534", "Title6", "Author211", "Publisher2", 2000, 1975, 78f));


            Filter filterPage = new Filter(pages: 2);

            Console.WriteLine("Find book Pages = 2 : \n\r" + service.FindByTag(filterPage));

            Filter filterTitle = new Filter(title: "Title3");

            Console.WriteLine("Find book Title = Title3 : \n\r" + service.FindByTag(filterTitle));


            Console.WriteLine("Unsort : ");
            var serviceList = service.GetAll();

            service.Save();
            service.Load();
            foreach (var item in serviceList)
            {
                Console.WriteLine(item);
            }

            Console.WriteLine("Sort by ISNB:");
            service.Sort(new ByISBN());

            foreach (var item in serviceList)
            {
                Console.WriteLine(item);
            }

            Console.WriteLine("Sort by price:");
            service.Sort(new ByPrice());

            foreach (var item in serviceList)
            {
                Console.WriteLine(item);
            }



            Console.ReadKey();
        }
Exemplo n.º 26
0
        public void Test_Book_Print()
        {
            string          expected = "Dark1, was writen in 1980 by Max and published by Minsk. Contains 100 and costs 100 \n ISBN:1111111111111 \n ";
            BookListService actual   = new BookListService();

            actual.AddBook(b1);
            Assert.AreEqual(expected, actual.PrintBooks());
        }
Exemplo n.º 27
0
        public void Test_Book_Print_AuthorNamePrice()
        {
            string          expected    = "Tolkien, LOTR, Russia, 1954";
            BookListStorage bookStorage = new BookListStorage(" ");
            BookListService actual      = new BookListService(bookStorage);

            Assert.AreEqual(expected, b1.AuthorTitlePubYear());
        }
Exemplo n.º 28
0
        public void AuthorTitle()
        {
            string          expected    = "Tolkien, LOTR";
            BookListStorage bookStorage = new BookListStorage(" ");
            BookListService actual      = new BookListService(bookStorage);

            Assert.AreEqual(expected, b1.AuthorTitle());
        }
Exemplo n.º 29
0
        private static void ShowBooksList(BookListService books, string massege)
        {
            Console.WriteLine(massege);
            foreach (Book b in books)
                Console.WriteLine(b);

            Console.WriteLine();
        }
Exemplo n.º 30
0
 public void Update()
 {
     BookListService.Update(CurrentBook);
     if (OnSubmitCallback.HasDelegate)
     {
         OnSubmitCallback.InvokeAsync(null);
     }
 }
        public void Add_BookAlreadyExists_ThrowDuplicateItemException()
        {
            var bookThatIsAlreadyExistsInList = new Book("987-123456779-4", "Some book", "Ivanov", 1985, "House", 1050, 100);
            var bookListService = new BookListService(new BinaryStorage());

            bookListService.Add(new Book("987-123456779-4", "Some book", "Ivanov", 1985, "House", 1050, 100));
            Assert.Throws <DuplicateBookException>(() => bookListService.Add(bookThatIsAlreadyExistsInList));
        }
        public void SortBy_SearchCriteriaIsNull_ThrowArgumentNullException()
        {
            var bookListService = new BookListService(new BinaryStorage());

            bookListService.Add(new Book("987-123456789-4", "Name", "Author", 2010, "House", 100, 100));
            bookListService.Add(new Book("987-123456779-4", "Some book", "Ivanov", 2010, "House", 1050, 100));
            Assert.Throws <ArgumentNullException>(() => bookListService.FindByTag(null));
        }
 static void Output(BookListService bookService)
 {
     foreach (Book book in bookService)
     {
         Console.WriteLine(book.ToString());
         Console.WriteLine();
     }
 }
 static void SortStorage(BookListService bls)
 {
     Console.WriteLine("Before");
     ShowStorage(bls);
     Console.WriteLine("After");
     bls = new BookListService(bls.SortBookByTag((t1, t2) => t1.CompareTo(t2)));
     ShowStorage(bls);
 }
Exemplo n.º 35
0
        public void FindByAuthorTests()
        {
            FakeBookListStorage.books = new List <Book>()
            {
                new Book()
                {
                    Author           = "Рихтер Джеффри",
                    ISBN             = "978-5-496-00-433-6",
                    Title            = "CLR via C#",
                    PageCount        = 896,
                    Price            = 70,
                    PublicationYear  = 2014,
                    PublishingOffice = "Питер"
                },

                new Book()
                {
                    Author           = "Тепляков Сергей",
                    ISBN             = "978-5-496-01649-0",
                    Title            = "Паттерны проектирования",
                    PageCount        = 320,
                    Price            = 100,
                    PublicationYear  = 2016,
                    PublishingOffice = "Питер"
                },

                new Book()
                {
                    Author           = "Албахари",
                    ISBN             = "978-5-496-00-433-6",
                    Title            = "C# 3.0 справочник",
                    PageCount        = 944,
                    Price            = 23,
                    PublicationYear  = 2012,
                    PublishingOffice = "BHV"
                }
            };

            var bookListService = new BookListService(new BookListStorage());

            var actualbookList = bookListService.FindByTag(new FindByTag.FindByAuthorPredicate("Тепляков Сергей"));

            var expectedBookList = new List <Book>()
            {
                new Book()
                {
                    Author           = "Тепляков Сергей",
                    ISBN             = "978-5-496-01649-0",
                    Title            = "Паттерны проектирования",
                    PageCount        = 320,
                    Price            = 100,
                    PublicationYear  = 2016,
                    PublishingOffice = "Питер"
                }
            };

            Assert.AreEqual(expectedBookList, actualbookList);
        }
        static void Main(string[] args)
        {
            BinaryBookRepository rep = new BinaryBookRepository("list.bin");
            BookListService service = new BookListService(rep);

            service.AddBook(new Book("Author1", "Book1", "Genre1", 24));
            service.AddBook(new Book("Author2", "Book2", "Genre2", 27));
            service.AddBook(new Book("Author3", "Book1", "Genre2", 24));
            service.RemoveBook(new Book("Author3", "Book1", "Genre2", 24)); 

            Book book = service.FindByTag(x => x.Author == "Author2");
           // service.AddBook(book);
            PrintBooks(rep.LoadBooks());
        }
Exemplo n.º 37
0
        static void Main(string[] args)
        {
            string path = @"BooksList.dat";

            try
            {
                BookListService books = new BookListService(path);
                ShowBooksList(books, "Спосок книг");
                
             /*
                     // Пример списка книг для работы 
              
                books.Add(new Book() { Author = "Лев Толстой", Title = "Война и мир", Genre = "Роман", Year = 1869 });
                books.Add(new Book() { Author = "Алан Александр Милн",Title ="Вини-Пух", Genre = "Детский рассказ", Year = 1926});
                books.Add(new Book() { Author = "Мари Шелли", Title="Франкенштейн", Genre = "Научная фантастика", Year = 1818}); 
                books.Add(new Book() { Author = "Михаил Булгаков", Title ="Мастер и Маргарита", Genre="Роман", Year = 1966});
                books.Add(new Book() { Author = "Федор Достоевский", Title = "Преступление и наказание" , Genre = "Роман" , Year = 1866});
                books.Add(new Book() { Author = "Николай Гоголь", Title = "Мёртвые души", Genre = "Сатира", Year = 1842 });
                books.Add(new Book() { Author = "Александр Пушкин", Title = "Евгений Онегин", Genre = "Роман", Year = 1825 });

                books.WriteBooksList();
              */
                
                books.SortBooksByTag(new ComparableBook());
                ShowBooksList(books, "Отсортированный список");

                books.Add(new Book() { Author = "Николай Гоголь", Title = "Вечера на хуторе близ Диканьки", Year = 1832, Genre = "Проза" });
                ShowBooksList(books, "Список книг с добавленной книгой");
                
                books.RemoveBook(new Book() { Author = "Николай Гоголь", Title = "Вечера на хуторе близ Диканьки", Year = 1832, Genre = "Проза" });
                ShowBooksList(books, "Список книг с удаленной книгой");

                Console.WriteLine("Спосок книг выбранны по тегу \"Жанр = Роман\"");
                foreach (Book b in books.FindByTag(new TagGanre(), "Роман"))
                    Console.WriteLine(b);
            }
            catch (FileNotFoundException ex)
            {
                log.Fatal(ex.Message, ex);
            }
            catch(Exception ex)
            {
                log.Error(ex.Message, ex);
            }
        }
        static void Main(string[] args)
        {
            BookListService bookService = new BookListService(new FileDataAccessManager("file.dat"));

            bookService.AddBook(new Book("Stephen King", "Rita Hayworth and Shawshank Redemption", "Novel", 1982));
            bookService.AddBook(new Book("George Orwell", "1982", "Dystopian novel", 1949));
            bookService.AddBook(new Book("Stephen King", "The Green Mile", "Novel", 1966));
            bookService.AddBook(new Book("Ken Elton Kesey", "One Flew Over the Cuckoo's Nest", "Novel", 1962));
            bookService.AddBook(new Book("Stephen King", "The Running Man", "Fantasy", 1982));
            bookService.AddBook(new Book("Stephen King", @"11\22\63", "Fantasy", 2011));
            
            bookService.Sort();
            Output(bookService);
            bookService.RemoveBook(b => b.Genre == "Novel");
            Console.WriteLine("=============================================================");
            Output(bookService);
            bookService.SaveData();
            Console.ReadKey();
        }