static void Main(string[] args) { EFRepository<Product> productRepository = new EFRepository<Product>(); LoggingRepositoryDecorator<Product> updateDeleteLoggingDecorator = new LoggingRepositoryDecorator<Product>(productRepository); SendRequestRepositoryDecorator<Product> updateDeleteRequestDecorator = new SendRequestRepositoryDecorator<Product>(updateDeleteLoggingDecorator); UpdateDataWareHouseRepositoryDecorator<Product> updateDataWareHouseDecorator = new UpdateDataWareHouseRepositoryDecorator<Product>(updateDeleteRequestDecorator); SecurityRepositoryDecorator<Product> securityDecorator = new SecurityRepositoryDecorator<Product>(updateDataWareHouseDecorator); #region Select işlemi Console.WriteLine("--------------------------------------------"); securityDecorator.Get(3); Console.WriteLine("---------------------------------------------\n"); #endregion #region Add işlemi Console.WriteLine("--------------------------------------------"); Product p=new Product(){ ProductId=1, ProductName="Ürünüm 1" }; securityDecorator.Add(p); Console.WriteLine("---------------------------------------------\n"); #endregion #region Update ve Delete İşlemi Console.WriteLine("---------------------------------------------"); securityDecorator.Delete(p); Console.WriteLine("---------------------------------------------\n"); Console.WriteLine("---------------------------------------------"); securityDecorator.Update(p); Console.WriteLine("---------------------------------------------\n"); #endregion Console.ReadLine(); }
static void Main(string[] args) { EFRepository <Product> productRepository = new EFRepository <Product>(); LoggingRepositoryDecorator <Product> updateDeleteLoggingDecorator = new LoggingRepositoryDecorator <Product>(productRepository); SendRequestRepositoryDecorator <Product> updateDeleteRequestDecorator = new SendRequestRepositoryDecorator <Product>(updateDeleteLoggingDecorator); UpdateDataWareHouseRepositoryDecorator <Product> updateDataWareHouseDecorator = new UpdateDataWareHouseRepositoryDecorator <Product>(updateDeleteRequestDecorator); SecurityRepositoryDecorator <Product> securityDecorator = new SecurityRepositoryDecorator <Product>(updateDataWareHouseDecorator); #region Select işlemi Console.WriteLine("--------------------------------------------"); securityDecorator.Get(3); Console.WriteLine("---------------------------------------------\n"); #endregion #region Add işlemi Console.WriteLine("--------------------------------------------"); Product p = new Product() { ProductId = 1, ProductName = "Ürünüm 1" }; securityDecorator.Add(p); Console.WriteLine("---------------------------------------------\n"); #endregion #region Update ve Delete İşlemi Console.WriteLine("---------------------------------------------"); securityDecorator.Delete(p); Console.WriteLine("---------------------------------------------\n"); Console.WriteLine("---------------------------------------------"); securityDecorator.Update(p); Console.WriteLine("---------------------------------------------\n"); #endregion Console.ReadLine(); }