public static void AbstractFactory()
        {
            // Language agnostic version
            CarFactory audiFactory = new AudiFactory();
            var driver1 = new Driver(audiFactory);
            driver1.CompareSpeed();
            ;

            CarFactory mercedesFactory = new MercedesFactory();
            var driver2 = new Driver(mercedesFactory);
            driver2.CompareSpeed();

            // C# specific version using generics
            var factory = new GenericFactory<MercedesSportsCar>();
            MercedesSportsCar mercedesSportsCar = factory.CreateObject();
            Console.WriteLine(mercedesSportsCar.GetType().ToString());

            Console.ReadKey();
        }
示例#2
0
 public void RegisterFactory(uint id, GenericFactory factory)
 {
     mGenericLibrary[id] = factory;
 }
示例#3
0
 public MemberApiController()
 {
     _memberservice    = GenericFactory.CreateInastance <IMemberService>(typeof(MemberService));
     _nutritionservice = GenericFactory.CreateInastance <INutritionService>(typeof(NutritionService));
 }
示例#4
0
 public CuentasController(SaraContext _db)
 {
     db           = _db;
     this.factory = new GenericFactory <Cuentas>(db);
 }
        protected override void Initialize(RequestContext requestContext)
        {
            iBusinessShop = GenericFactory <BusinessShop, IBusinessShop> .CreateInstance();

            base.Initialize(requestContext);
        }
示例#6
0
 public ComprasController(SaraContext _db)
 {
     db                  = _db;
     this.factory        = new GenericFactory <Compras>(db);
     this.factoryDetalle = new GenericFactory <ComprasDetalle>(db);
 }
        public RepositoryMySql()
        {
            idataAccess = GenericFactory <DataAccessMySql, IDataAccess> .CreateInstance();

            cache = new CacheAbstraction();
        }