protected override void OnModelCreating(DbModelBuilder modelBuilder) { modelBuilder.Conventions.Remove <ManyToManyCascadeDeleteConvention>(); modelBuilder.Conventions.Remove <OneToManyCascadeDeleteConvention>(); Precision.ConfigureModelBuilder(modelBuilder); modelBuilder.Configurations.Add(new ProjectMap()); modelBuilder.Configurations.Add(new VoltageNominalMap()); modelBuilder.Configurations.Add(new VoltageSpecificMap()); modelBuilder.Configurations.Add(new SolutionMap()); modelBuilder.Configurations.Add(new SolutionSetupMap()); modelBuilder.Configurations.Add(new UserDefaultSolutionSetupMap()); modelBuilder.Configurations.Add(new LoadDefaultsMap()); modelBuilder.Configurations.Add(new BasicLoadMap()); modelBuilder.Configurations.Add(new MotorCalculationMap()); modelBuilder.Configurations.Add(new ACLoadMap()); modelBuilder.Configurations.Add(new UPSLoadMap()); modelBuilder.Configurations.Add(new GasPipingSolutionMap()); modelBuilder.Configurations.Add(new ExhaustPipingSolutionMap()); base.OnModelCreating(modelBuilder); }
protected override void OnModelCreating(DbModelBuilder modelBuilder) { //base.OnModelCreating(modelBuilder); // remove tablename pluralizing modelBuilder.Conventions.Remove <PluralizingTableNameConvention>(); // remove cascade delete //modelBuilder.Conventions.Remove<ManyToManyCascadeDeleteConvention>(); modelBuilder.Conventions.Remove <OneToManyCascadeDeleteConvention>(); // Identity, PK - int modelBuilder.Configurations.Add(new RoleMap()); modelBuilder.Configurations.Add(new UserClaimMap()); modelBuilder.Configurations.Add(new UserLoginMap()); modelBuilder.Configurations.Add(new UserMap()); modelBuilder.Configurations.Add(new UserRoleMap()); Precision.ConfigureModelBuilder(modelBuilder); // convert all datetime and datetime? properties to datetime2 in ms sql // ms sql datetime has min value of 1753-01-01 00:00:00.000 modelBuilder.Properties <DateTime>().Configure(c => c.HasColumnType("datetime2")); // use Date type in ms sql, where [DataType(DataType.Date)] attribute is used modelBuilder.Properties <DateTime>() .Where(x => x.GetCustomAttributes(false).OfType <DataTypeAttribute>() .Any(a => a.DataType == DataType.Date)) .Configure(c => c.HasColumnType("date")); }
protected override void OnModelCreating(DbModelBuilder modelBuilder) { // remove cascade delete //modelBuilder.Conventions.Remove<ManyToManyCascadeDeleteConvention>(); modelBuilder.Conventions.Remove <OneToManyCascadeDeleteConvention>(); // Identity, PK - int modelBuilder.Configurations.Add(new RoleIntMap()); modelBuilder.Configurations.Add(new UserClaimIntMap()); modelBuilder.Configurations.Add(new UserLoginIntMap()); modelBuilder.Configurations.Add(new UserIntMap()); modelBuilder.Configurations.Add(new UserRoleIntMap()); Precision.ConfigureModelBuilder(modelBuilder); // convert all datetime and datetime? properties to datetime2 in ms sql // ms sql datetime has min value of 1753-01-01 00:00:00.000 modelBuilder.Properties <DateTime>().Configure(c => c.HasColumnType("datetime2")); // use Date type in ms sql, where [DataType(DataType.Date)] attribute is used modelBuilder.Properties <DateTime>() .Where(x => x.GetCustomAttributes(false).OfType <DataTypeAttribute>() .Any(a => a.DataType == DataType.Date)) .Configure(c => c.HasColumnType("date")); }
protected override void OnModelCreating(DbModelBuilder modelBuilder) { Precision.ConfigureModelBuilder(modelBuilder); modelBuilder.Entity <Restroom>() .HasOptional(m => m.Contact) .WithMany(m => m.Restrooms) .HasForeignKey(m => m.ContactId); modelBuilder.Entity <Restroom>() .HasOptional(m => m.CleanedContact) .WithMany(m => m.RestroomsIClean) .HasForeignKey(m => m.CleanedContactId); modelBuilder.Entity <Restroom>() .HasOptional(m => m.RepairedContact) .WithMany(m => m.RestroomsIRepair) .HasForeignKey(m => m.RepairedContactId); modelBuilder.Entity <Restroom>() .HasOptional(m => m.SuppliedContact) .WithMany(m => m.RestroomsISupply) .HasForeignKey(m => m.SuppliedContactId); modelBuilder.Entity <Restroom>() .HasOptional(m => m.SecurityGatesContact) .WithMany(m => m.RestroomsGateIProtect) .HasForeignKey(m => m.SecurityGatesContactId); modelBuilder.Entity <Restroom>() .HasOptional(m => m.SecurityLocksContact) .WithMany(m => m.RestroomsLockIProtect) .HasForeignKey(m => m.SecurityLocksContactId); //modelBuilder.Entity<Confirmation>() // .Property(e => e.Badge) // .IsUnicode(false); //modelBuilder.Entity<Confirmation>() // .Property(e => e.DeviceId) // .IsUnicode(false); //modelBuilder.Entity<Confirmation>() // .Property(e => e.SessionId) // .IsUnicode(false); //modelBuilder.Entity<Confirmation>() // .Property(e => e.AddUserId) // .IsUnicode(false); //modelBuilder.Entity<Confirmation>() // .Property(e => e.UpdUserId) // .IsUnicode(false); //modelBuilder.Entity<Contact>() // .Property(e => e.Name) // .IsUnicode(false); //modelBuilder.Entity<Contact>() // .Property(e => e.Phone) // .IsUnicode(false); //modelBuilder.Entity<Contact>() // .Property(e => e.Email) // .IsUnicode(false); //modelBuilder.Entity<Contact>() // .Property(e => e.Address) // .IsUnicode(false); //modelBuilder.Entity<Contact>() // .Property(e => e.AddUserId) // .IsUnicode(false); //modelBuilder.Entity<Contact>() // .Property(e => e.UpdUserId) // .IsUnicode(false); //modelBuilder.Entity<Contact>() // .HasMany(e => e.RestroomContacts) // .WithRequired(e => e.Contact) // .WillCascadeOnDelete(false); //modelBuilder.Entity<CostTermList>() // .Property(e => e.Name) // .IsUnicode(false); //modelBuilder.Entity<Feedback>() // .Property(e => e.Badge) // .IsUnicode(false); //modelBuilder.Entity<Feedback>() // .Property(e => e.FeedbackText) // .IsUnicode(false); //modelBuilder.Entity<Feedback>() // .Property(e => e.Rating) // .HasPrecision(3, 2); //modelBuilder.Entity<Feedback>() // .Property(e => e.Issue) // .IsUnicode(false); //modelBuilder.Entity<Feedback>() // .Property(e => e.WorkRequestDescription) // .IsUnicode(false); //modelBuilder.Entity<Feedback>() // .Property(e => e.WorkRequestId) // .IsUnicode(false); //modelBuilder.Entity<Feedback>() // .Property(e => e.AddUserId) // .IsUnicode(false); //modelBuilder.Entity<Feedback>() // .Property(e => e.UpdUserId) // .IsUnicode(false); //modelBuilder.Entity<IssueStatusList>() // .Property(e => e.Name) // .IsUnicode(false); //modelBuilder.Entity<Log>() // .Property(e => e.DeviceId) // .IsUnicode(false); //modelBuilder.Entity<Log>() // .Property(e => e.DeviceModel) // .IsUnicode(false); //modelBuilder.Entity<Log>() // .Property(e => e.DeviceOS) // .IsUnicode(false); //modelBuilder.Entity<Log>() // .Property(e => e.Description) // .IsUnicode(false); //modelBuilder.Entity<Restroom>() // .Property(e => e.EquipmentNum) // .IsFixedLength() // .IsUnicode(false); //modelBuilder.Entity<Restroom>() // .Property(e => e.RestroomType) // .IsUnicode(false); //modelBuilder.Entity<Restroom>() // .Property(e => e.RestroomName) // .IsUnicode(false); //modelBuilder.Entity<Restroom>() // .Property(e => e.Address) // .IsUnicode(false); //modelBuilder.Entity<Restroom>() // .Property(e => e.City) // .IsUnicode(false); //modelBuilder.Entity<Restroom>() // .Property(e => e.State) // .IsUnicode(false); //modelBuilder.Entity<Restroom>() // .Property(e => e.Country) // .IsUnicode(false); //modelBuilder.Entity<Restroom>() // .Property(e => e.DrinkingWater) // .IsUnicode(false); //modelBuilder.Entity<Restroom>() // .Property(e => e.ACTRoute) // .IsUnicode(false); //modelBuilder.Entity<Restroom>() // .Property(e => e.Hours) // .IsUnicode(false); //modelBuilder.Entity<Restroom>() // .Property(e => e.Note) // .IsUnicode(false); //modelBuilder.Entity<Restroom>() // .Property(e => e.LongDec) // .HasPrecision(9, 6); //modelBuilder.Entity<Restroom>() // .Property(e => e.LatDec) // .HasPrecision(9, 6); //modelBuilder.Entity<Restroom>() // .Property(e => e.NotificationEmail) // .IsUnicode(false); //modelBuilder.Entity<Restroom>() // .Property(e => e.AverageRating) // .HasPrecision(3, 2); //modelBuilder.Entity<Restroom>() // .Property(e => e.AddUserId) // .IsUnicode(false); //modelBuilder.Entity<Restroom>() // .Property(e => e.UpdUserId) // .IsUnicode(false); //modelBuilder.Entity<Restroom>() // .HasMany(e => e.Feedbacks) // .WithRequired(e => e.Restroom) // .WillCascadeOnDelete(false); //modelBuilder.Entity<Restroom>() // .HasMany(e => e.RestroomContacts) // .WithRequired(e => e.Restroom) // .WillCascadeOnDelete(false); //modelBuilder.Entity<RestroomContact>() // .Property(e => e.Cost) // .HasPrecision(19, 4); //modelBuilder.Entity<User>() // .Property(e => e.Badge) // .IsUnicode(false); //modelBuilder.Entity<User>() // .Property(e => e.DeviceId) // .IsUnicode(false); //modelBuilder.Entity<User>() // .Property(e => e.DeviceModel) // .IsUnicode(false); //modelBuilder.Entity<User>() // .Property(e => e.DeviceOS) // .IsUnicode(false); //modelBuilder.Entity<User>() // .Property(e => e.SessionId) // .IsUnicode(false); //modelBuilder.Entity<User>() // .Property(e => e.Description) // .IsUnicode(false); //modelBuilder.Entity<User>() // .Property(e => e.AddUserId) // .IsUnicode(false); //modelBuilder.Entity<User>() // .Property(e => e.UpdUserId) // .IsUnicode(false); }