static void Main(string[] args) { IProductCommunicatorAbstractFactory productCommunicatorAbstractFactory = new InMemoryProductCommunicatorAbstractFactory(); ProductService productService = new ProductService(productCommunicatorAbstractFactory); // Get product. try { Product product = productService.GetById(new Guid("34cb0113-2b54-4f86-98bc-a1a70d5817fd")); Console.WriteLine(product); } catch (Exception) { Console.WriteLine("Product not found."); } // Save new product. try { Product savedProduct = productService.Save(new Product() { Name = "Desk", Price = 49.99 }); Console.WriteLine(savedProduct); } catch (Exception) { Console.WriteLine("Product saved failed."); } }
static void Main(string[] args) { // Models: // Product, with Id, Name, Price // Service // ProductService // Utility // FileProductWriter // FileProductReader // AbstractFactory IProductCommunicatorAbstractFactory productCommunicatorAbstractFactory = new InMemoryProductCommunicatorAbstractFactory(); IProductService productService = new ProductService(productCommunicatorAbstractFactory); // add product to json file Product product = new Product { Name = "Long", Price = 123M }; try { productService.AddProduct(product); Console.WriteLine($"Product added {product}"); } catch (Exception ex) { Console.WriteLine($"Exception happen {ex.Message}"); } // get product info from json file try { product = productService.GetById(product.Id); Console.WriteLine($"Product queried {product}"); } catch (Exception ex) { Console.WriteLine($"Exception happen {ex.Message}"); } }