Пример #1
0
        public CherrySeeder(Action <ISeederConfigurationBuilder> configurationExpression)
        {
            _entityMetadataDict = new Dictionary <Type, EntityMetadata>();
            _idMappingProvider  = new IdMappingProvider();

            var configBuilder = new SeederConfigurationBuilder();

            configurationExpression(configBuilder);
            _configuration = configBuilder.Build();

            _objectListTransformation = new ObjectListTransformation(
                new ObjectTransformation.ObjectTransformation(
                    new PropertyHandler(
                        _idMappingProvider,
                        new TypeTransformationProvider(_configuration.TypeTransformations)
                        )
                    )
                );

            foreach (var entitySetting in _configuration.EntitySettings)
            {
                _entityMetadataDict.Add(entitySetting.EntityType, new EntityMetadata
                {
                    EntityType    = entitySetting.EntityType,
                    EntitySetting = entitySetting
                });
            }
        }
Пример #2
0
 public PropertyHandler(IdMappingProvider idMappingProvider, TypeTransformationProvider typeTransformationProvider)
 {
     _strategyDictionary = new Dictionary <Func <string, EntitySetting, bool>, IPropertyHandler>
     {
         { PrimaryKeyHandler.CanHandle, new PrimaryKeyHandler() },
         { ForeignKeyHandler.CanHandle, new ForeignKeyHandler(idMappingProvider) },
         { CopyPropertyValueHandler.CanHandle, new CopyPropertyValueHandler(typeTransformationProvider) }
     };
 }
Пример #3
0
 public ForeignKeyHandler(IdMappingProvider idMappingProvider)
 {
     _idMappingProvider = idMappingProvider;
 }