public static void ProceedToRemove() { string username; while (true) { Console.Clear(); Console.WriteLine("----REMOVE BOOK----" + "\n" + "\n" + ">Type your username"); username = Console.ReadLine(); if (!username.Trim().Equals(string.Empty)) { break; } } Admin admin = rental.TryPickAdminByUsername(username); if (admin == null) { NoAdminCase(); return; } Console.Clear(); Console.WriteLine("----REMOVE BOOK----" + "\n" + "\n" + "Hi, Admin " + admin.Name + ", id: " + admin.Id); IReadOnlyCollection <Book> books = rental.GetAllBooks(); Console.WriteLine(books.Count != 0 ? ">Available books: " : "No books available"); if (books.Count != 0) { foreach (Book b in books) { string text = b.Name + ", by "; foreach (Author a in b.Authors) { text += a.Name + ", "; } text = text.Substring(0, text.Length - 2); text += "(id: " + b.Id + ")"; Console.WriteLine(text); } Console.WriteLine(">Input book id: "); Guid bookid = Guid.Parse(Console.ReadLine()); Book book = rental.TryGetBookById(bookid); if (book == null) { Console.Clear(); Console.WriteLine("----RETURN BOOK----" + "\n" + "\n" + "No such book" + "\n" + "\n" + "Press any key to proceed..."); while (true) { if (Console.ReadKey() != null) { break; } } return; } Console.WriteLine(rental.TryRemoveBook(book) ? "OK, removed " + book.Name + "(id: " + book.Id + ")" : "Can't remove book, already in use"); } Console.WriteLine("\n" + "Press any key to proceed to menu..."); while (true) { if (Console.ReadKey() != null) { break; } } }