예제 #1
0
        public static void ConfigureModel()
        {
            FluentConfig.Config()
            .With <Violation>()
            .Match(x => x.Type)
            .Merge(x => x.Type)
            .Merge(x => x.CreatedAt)
            .MergeOnMatchOrCreate(p => p.Type)
            .MergeOnMatchOrCreate(p => p.CreatedAt)
            .Set();

            FluentConfig.Config()
            .With <Alert>()
            .Match(x => x.AlertId)
            .Merge(x => x.Type)
            .Merge(x => x.CreatedAt)
            .Merge(x => x.SeverityLevel)
            .Merge(x => x.Status)
            .Merge(x => x.Description)
            .Merge(x => x.AlertId)
            .MergeOnMatchOrCreate(p => p.Type)
            .MergeOnMatchOrCreate(p => p.CreatedAt)
            .MergeOnMatchOrCreate(p => p.SeverityLevel)
            .MergeOnMatchOrCreate(p => p.Status)
            .MergeOnMatchOrCreate(p => p.Description)
            .MergeOnMatchOrCreate(p => p.Description)
            .MergeOnMatchOrCreate(p => p.AlertId)
            .Set();
        }
        public static void ConfigureModel()
        {
            FluentConfig.Config()
            .With <User>()
            .Match(x => x.AzureId)
            .Merge(x => x.AzureId)
            .MergeOnCreate(p => p.AzureId)
            .MergeOnCreate(p => p.CreatedAt)
            .MergeOnCreate(p => p.Phone)
            .MergeOnMatchOrCreate(p => p.Name)
            .MergeOnMatchOrCreate(p => p.Surname)
            .MergeOnMatchOrCreate(p => p.Email)
            .Set();

            FluentConfig.Config()
            .With <Role>()
            .Match(role => role.RoleType)
            .Merge(role => role.RoleType)
            .MergeOnMatchOrCreate(role => role.RoleType)
            .Set();

            FluentConfig.Config()
            .With <UserRoleRelationship>()
            .Set();
        }
예제 #3
0
        public void Init()
        {
            FluentConfig.Config()
            .With <Gene>("Gene")
            .MergeOnCreate(gene => gene.Name)
            .MergeOnMatch(gene => gene.Name)
            .MergeOnMatchOrCreate(gene => gene.Name)
            .Set();

            FluentConfig.Config()
            .With <Variation>("Variation")
            .MergeOnCreate(variation => variation.Location)
            .MergeOnCreate(variation => variation.Description)
            .MergeOnMatch(variation => variation.Location)
            .MergeOnMatch(variation => variation.Description)
            .MergeOnMatchOrCreate(variation => variation.Location)
            .MergeOnMatchOrCreate(variation => variation.Description)
            .Set();

            FluentConfig.Config()
            .With <Protein>("Protein")
            .MergeOnCreate(protein => protein.Name)
            .MergeOnCreate(protein => protein.FullName)
            .MergeOnCreate(protein => protein.Code)
            .MergeOnMatch(protein => protein.Name)
            .MergeOnMatch(protein => protein.FullName)
            .MergeOnMatch(protein => protein.Code)
            .MergeOnMatchOrCreate(protein => protein.Name)
            .MergeOnMatchOrCreate(protein => protein.FullName)
            .MergeOnMatchOrCreate(protein => protein.Code)
            .Set();

            FluentConfig.Config()
            .With <Comment>("Comment")
            .MergeOnCreate(comment => comment.Text)
            .MergeOnCreate(comment => comment.Type)
            .MergeOnMatch(comment => comment.Text)
            .MergeOnMatch(comment => comment.Type)
            .MergeOnMatchOrCreate(comment => comment.Text)
            .MergeOnMatchOrCreate(comment => comment.Type)
            .Set();

            FluentConfig.Config()
            .With <Taxon>("Taxon")
            .MergeOnCreate(taxon => taxon.Name)
            .MergeOnMatch(taxon => taxon.Name)
            .MergeOnMatchOrCreate(taxon => taxon.Name)
            .Set();

            FluentConfig.Config()
            .With <Sequence>("Sequence")
            .MergeOnCreate(sequence => sequence.Content)
            .MergeOnMatch(sequence => sequence.Content)
            .MergeOnMatchOrCreate(sequence => sequence.Content)
            .Set();
        }
예제 #4
0
        public void FluentConfigShouldBePlacedOnDatabaseWhenInsertedIntoFactoryConfig()
        {
            var db           = new Database(new SqlConnection());
            var fluentConfig = new FluentConfig(x => y => new PocoData(y, new Mapper()));

            var factory = DatabaseFactory.Config(x =>
            {
                x.UsingDatabase(() => db);
                x.WithFluentConfig(fluentConfig);
            });

            var database = factory.GetDatabase();

            Assert.AreEqual(fluentConfig.Config(null), database.PocoDataFactory);
        }
예제 #5
0
        public void FluentConfigShouldBePlacedOnDatabaseWhenInsertedIntoFactoryConfig()
        {
            var db = new Database(new SqlConnection());
            var mapperCollection = new MapperCollection();
            var pocoDataFactory  = new FluentPocoDataFactory((y, f) => new PocoDataBuilder(y, mapperCollection).Init(), mapperCollection);
            var fluentConfig     = new FluentConfig(x => pocoDataFactory);

            var factory = DatabaseFactory.Config(x =>
            {
                x.UsingDatabase(() => db);
                x.WithFluentConfig(fluentConfig);
            });

            var database = factory.GetDatabase();

            Assert.AreEqual(fluentConfig.Config(null), database.PocoDataFactory);
        }
예제 #6
0
        public static void ConfigureModel()
        {
            FluentConfig.Config()
            .With <Transportation>()
            .Match(x => x.TransportationId)
            .Merge(x => x.TransportationId)
            .Merge(x => x.IsActive)
            .MergeOnCreate(p => p.TransportationId)
            .MergeOnCreate(p => p.IsActive)
            .MergeOnCreate(p => p.CreatedAt)
            .Set();

            FluentConfig.Config()
            .With <CapturedLocation>()
            .MergeOnMatchOrCreate(x => x.Altitude)
            .MergeOnMatchOrCreate(x => x.Longitude)
            .MergeOnMatchOrCreate(x => x.CapturedDateTimeUtc)
            .Set();
        }
예제 #7
0
        public static void ConfigureModel()
        {
            FluentConfig.Config()
            .With <Person>("SecretAgent")
            .Match(x => x.Id)
            .Merge(x => x.Id)
            .MergeOnCreate(p => p.Id)
            .MergeOnCreate(p => p.DateCreated)
            .MergeOnMatchOrCreate(p => p.Title)
            .MergeOnMatchOrCreate(p => p.Name)
            .MergeOnMatchOrCreate(p => p.IsOperative)
            .MergeOnMatchOrCreate(p => p.Sex)
            .MergeOnMatchOrCreate(p => p.SerialNumber)
            .MergeOnMatchOrCreate(p => p.SpendingAuthorisation)
            .Set();

            FluentConfig.Config()
            .With <Address>()
            .MergeOnMatchOrCreate(a => a.Street)
            .MergeOnMatchOrCreate(a => a.Suburb)
            .Set();

            FluentConfig.Config()
            .With <Weapon>()
            .Match(x => x.Id)
            .Merge(x => x.Id)
            .MergeOnMatchOrCreate(w => w.Name)
            .MergeOnMatchOrCreate(w => w.BlastRadius)
            .Set();

            FluentConfig.Config()
            .With <HomeAddressRelationship>()
            .Match(ha => ha.DateEffective)
            .MergeOnMatchOrCreate(hr => hr.DateEffective)
            .Set();

            FluentConfig.Config()
            .With <WorkAddressRelationship>()
            .Set();
        }