public static void Main() { try { var path = Path.GetDirectoryName(Assembly.GetExecutingAssembly().Location); var file = Path.Combine(Path.Combine(path, "cmd"), "redis-server.exe"); if (File.Exists(file)) { var redis = new ProcessStartInfo() { FileName = file }; using (var server = Process.Start(redis)) { if (server.Responding) { using (var client = new RedisClient()) { client.FlushAll(); CatalogInitializer.Configure(); // Create "[CREATE] StoreAll".ToConsoleInfo(); client.StoreAll<Book>(CatalogInitializer.Seed()); // Read "[READ] GetAll".ToConsoleInfo(); var catalog = client.GetAll<Book>().ToList(); catalog.ForEach(retrieved => retrieved.ToJson<Book>().ToConsole()); var isbn = "9780596800956"; string.Format("[READ] GetById (Isbn = {0})", isbn).ToConsoleInfo(); client.GetById<Book>(isbn).ToJson<Book>().ToConsole(); // Update "[UPDATE] (InStock = false)".ToConsoleInfo(); var book = client.GetById<Book>(isbn); book.InStock = false; client.Store<Book>(book); client.GetById<Book>(isbn).ToJson<Book>().ToConsole(); // Delete string.Format("[DELETE] DeleteById (Isbn = {0})", isbn).ToConsoleInfo(); client.DeleteById<Book>(isbn); client.GetById<Book>(isbn).ToJson<Book>().ToConsole(); } } } } } catch (Exception exception) { exception.ToString().ToConsole(); } finally { "Press any key to continue . . .".ToConsole(); Console.ReadKey(true); } }