/// <summary> /// Load from library. /// </summary> /// <param name="address">String address file.</param> /// <returns>Book list.</returns> public IEnumerable <Book> LoadFromFileToBookList(string address) { string addr = address; if (IsNullOrEmpty(address)) { addr = ConfigurationManager.AppSettings["address"]; } var operationWithFile = new OperationWithFile(Path.Combine(AppDomain.CurrentDomain.BaseDirectory, addr)); return(operationWithFile.ReadBooks()); }
/// <summary> /// Save from library to file. /// </summary> /// <param name="address">String address file.</param> public void SaveFromBookListToFile(string address) { string addr = address; if (IsNullOrEmpty(address)) { addr = ConfigurationManager.AppSettings["address"]; } OperationWithFile operationWithFile = new OperationWithFile(Path.Combine(AppDomain.CurrentDomain.BaseDirectory, addr)); operationWithFile.WriteBooks(BookList); }
/// <summary> /// .ctor /// </summary> /// <param name="operationWithFile">Combine path with directory and file.</param> /// <param name="bookListService">List operation of books.</param> public BookUiHelpFunction(OperationWithFile operationWithFile, BookListService bookListService) { Address = ConfigurationManager.AppSettings["address"]; if (operationWithFile == null) { operationWithFile = new OperationWithFile(Path.Combine(AppDomain.CurrentDomain.BaseDirectory, Address)); } if (bookListService == null) { bookListService = new BookListService(operationWithFile); } ListService = bookListService; }
static void Main(string[] args) { OperationWithFile operationWithFile = new OperationWithFile(Path.Combine(AppDomain.CurrentDomain.BaseDirectory, ConfigurationManager.AppSettings["address"])); BookListService bookListService = new BookListService(operationWithFile); Book book1 = new Book("Есенин", "Первая книга", "Москва", 1955, 150); Book book2 = new Book("Пушкин", "Вторая книга", "Российская Империя", 1955, 150); BookUiHelpFunction bookUiHelpFunction = new BookUiHelpFunction(operationWithFile, bookListService); bookUiHelpFunction.AddBook(book1); bookUiHelpFunction.AddBook(book1); bookUiHelpFunction.RemoveBook(book2); bookUiHelpFunction.AddBook(book2); List <Book> resultFind = (List <Book>)bookListService.FindByTag(book => book.NumberOfPages == 150); ServiceBookLogger.Info("Find list book where number of page = 189"); DisplayBook(resultFind); Console.ReadKey(); }