示例#1
0
        public RepositoryTestDependencyRegistration(IObjectContainer objectContainer, FeatureInfo featureInfo)
        {
            if (objectContainer == null)
            {
                throw new ArgumentNullException(nameof(objectContainer));
            }

            var dataProvider = GetDataProvider(objectContainer);

            if (dataProvider == null)
            {
                return;
            }

            switch (dataProvider)
            {
            case DataProvider.RavenDb:
                objectContainer.RegisterFeatureDependency <RavenDbFeatureDependency>();
                objectContainer.RegisterScenarioDependency <RavenDbScenarioDependency>();
                break;

            case DataProvider.SqlServer:
                RegisterFtsInjectionProvider(objectContainer);
                objectContainer.RegisterFeatureDependency <SqlServerFeatureDependency>();
                objectContainer.RegisterScenarioDependency <SqlServerScenarioDependency>();
                break;
            }

            objectContainer.RegisterFeatureDependency <ImportModelFeatureDependency>();
            objectContainer.RegisterScenarioDependency <RepositoryAdapterScenarioDependency>();
        }