public BookController(Bookrepository book) { bookrepository = book; }
static void Main(string[] args) { Console.WriteLine("Conan the librarian"); Book cheese = new Book(); cheese.Title = "Cheese"; cheese.Id = 1; cheese.Sequel = null; Console.WriteLine(cheese?.Sequel?.Title); //get all books in Db IEnumerable <Book> books = Bookrepository.GetBooks(); books = Bookrepository.GetBooksFromarray(); //find books with letter C //use Where with named function IEnumerable <Book> booksWithC = books.Where(FilterBooksWithC); //use with anonymous booksWithC = books.Where( b => b.Title.Contains("C") ); foreach (Book book in booksWithC) { Console.WriteLine(book?.Title); } //Extension methods int numberToDivide = 5; Console.WriteLine($"{numberToDivide}/2=" + $"{numberToDivide.DivideByNumber(2)}"); string input = "zes"; Console.WriteLine(input.CountChars()); //synchronous pattern //Console.WriteLine("Calculating..."); //long result = Calculate(); //Console.WriteLine("in the meantime, what's your name?"); //string userInput = Console.ReadLine(); ////print output //Console.WriteLine($"Hello {userInput}"); //Console.WriteLine($"Result={result}"); //asynchronous pattern Console.WriteLine("Calculating..."); //call method async //receive Task object var result = CalculateAsync(); //wait for it! while (result.IsCompleted == false) { Console.Write("*"); Thread.Sleep(100); } //print output Console.WriteLine($"\nResult={result.Result}"); //asynchronous api call Console.WriteLine("Fetching quote.."); var apiResult = GetQuote(); while (apiResult.IsCompleted == false) { Console.Write("*"); Thread.Sleep(100); } Console.WriteLine($"\nQuote:{apiResult.Result}"); }