static void Main(string[] args)
        {
            Client <DbUserEntity>         client = new Client <DbUserEntity>();
            ConcreteFirst <DbUserEntity>  first  = new ConcreteFirst <DbUserEntity>();
            ConcreteSecond <DbUserEntity> second = new ConcreteSecond <DbUserEntity>();


            client.Create(first);   //метод Create() не знает с какой БД работает
            SecondOrmAdapter <DbUserEntity> adapter = new SecondOrmAdapter <DbUserEntity>(second);

            client.Create(adapter);

            Console.Read();
        }
Example #2
0
        static void Main(string[] args)
        {
            var dbUserEntity     = new DbUserEntity();
            var dbUserInfoEntity = new DbUserInfoEntity();

            var firstUserOrm     = new ConcreteFirstOrm <DbUserEntity>();
            var firstUserInfoOrm = new ConcreteFirstOrm <DbUserInfoEntity>();

            var firstOrmAdapter = new FirstOrmAdapter(firstUserOrm, firstUserInfoOrm);
            var firstClient     = new UserClient(firstOrmAdapter);

            firstClient.Add(dbUserEntity, dbUserInfoEntity);

            var secondOrm        = new ConcreteSecondOrm();
            var secondOrmAdapter = new SecondOrmAdapter(secondOrm);
            var secondClient     = new UserClient(secondOrmAdapter);

            secondClient.Add(dbUserEntity, dbUserInfoEntity);
        }