private BookItem CreateOrUpdateBook() { var bookItem = new BookItem(); Console.WriteLine("Введите название книги:"); bookItem.Name = ConsoleExtensions.ReadNotEmptyString(); Console.WriteLine("Введите количество страниц:"); bookItem.NumberOfPages = ConsoleExtensions.ReadInteger(); Console.WriteLine("Введите год публикации:"); bookItem.PublicationYear = ConsoleExtensions.ReadYear(); Console.WriteLine("Введите регистрационный номер:"); bookItem.RegNumber = ConsoleExtensions.ReadNotEmptyString(); Console.WriteLine(); Console.WriteLine($"{Constants.OperationConstants.AddNewSubEntityOperationId}. Добавить нового автора:"); Console.WriteLine($"{Constants.OperationConstants.SelectSubEntityOperationId}. Выбрать из существующих:"); var authorOperationChoice = ConsoleExtensions.ReadInteger(new List <int> { Constants.OperationConstants.AddNewSubEntityOperationId, Constants.OperationConstants.SelectSubEntityOperationId }); switch (authorOperationChoice) { case Constants.OperationConstants.SelectSubEntityOperationId: { Console.WriteLine("Существующие авторы:"); Console.WriteLine($"Нажмите \"{Constants.OperationConstants.ReturnOperationId}\" для добавления нового автора"); var selectedAuthorId = SelectAuthorFromList(); if (selectedAuthorId == Constants.OperationConstants.ReturnOperationId) { InputAuthorFields(bookItem); } else { bookItem.AuthorId = selectedAuthorId; } break; } case Constants.OperationConstants.AddNewSubEntityOperationId: { InputAuthorFields(bookItem); break; } } Console.WriteLine(); Console.WriteLine($"{Constants.OperationConstants.AddNewSubEntityOperationId}. Добавить нового издателя:"); Console.WriteLine($"{Constants.OperationConstants.SelectSubEntityOperationId}. Выбрать из существующих:"); var publisherOperationChoice = ConsoleExtensions.ReadInteger(new List <int> { Constants.OperationConstants.AddNewSubEntityOperationId, Constants.OperationConstants.SelectSubEntityOperationId }); switch (publisherOperationChoice) { case Constants.OperationConstants.SelectSubEntityOperationId: { Console.WriteLine("Существующие издатели:"); Console.WriteLine($"Нажмите \"{Constants.OperationConstants.ReturnOperationId}\" для добавления нового издателя"); var selectedPublisherId = SelectPublisherFromList(); if (selectedPublisherId == Constants.OperationConstants.ReturnOperationId) { InputPublisherFields(bookItem); } else { bookItem.PublisherId = selectedPublisherId; } break; } case Constants.OperationConstants.AddNewSubEntityOperationId: { InputPublisherFields(bookItem); break; } } bookItem.IsBookInLibrary = false; return(bookItem); }