using System.Data.Common; using System.Data.Entity; using System.Data.Entity.ModelConfiguration.Conventions; using WeOnlineApp.Authorization.Roles; using WeOnlineApp.Authorization.Users; using WeOnlineApp.BaseInfo; using WeOnlineApp.MultiTenancy; using IwbZero.EntityFramework; using WeOnlineApp.Basic; using WeOnlineApp.Question; using WeOnlineApp.TrainingCamp; namespace WeOnlineApp.EF { public class WeOnlineAppDbContext : IwbZeroDbContext { //TODO: Define an IDbSet for your Entities... public IDbSet SubjectCategoryInfos { get; set; } public IDbSet CampInfos { get; set; } public IDbSet CampPlayInfos { get; set; } public IDbSet CampPlayScoreInfos { get; set; } public IDbSet CampPlayLogInfos { get; set; } public IDbSet CampPlayUserInfos { get; set; } public IDbSet CampSceneMapInfos { get; set; } public IDbSet QuestionInfos { get; set; } public IDbSet QuestionFavoriteInfos { get; set; } public IDbSet QuestionAnswerInfos { get; set; } /* NOTE: * Setting "Default" to base class helps us when working migration commands on Package Manager Console. * But it may cause problems when working Migrate.exe of EF. If you will apply migrations on command line, do not * pass connection string name to base classes. ABP works either way. */ public IDbSet SysAttachFiles { get; set; } public IDbSet SysStates { get; set; } public IDbSet SysFunctions { get; set; } public IDbSet SysHelps { get; set; } public WeOnlineAppDbContext() : base("Default") { } /* NOTE: * This constructor is used by ABP to pass connection string defined in WeOnlineAppDataModule.PreInitialize. * Notice that, actually you will not directly create an instance of WeOnlineAppDbContext since ABP automatically handles it. */ public WeOnlineAppDbContext(string nameOrConnectionString) : base(nameOrConnectionString) { } //This constructor is used in tests public WeOnlineAppDbContext(DbConnection existingConnection) : base(existingConnection, false) { } public WeOnlineAppDbContext(DbConnection existingConnection, bool contextOwnsConnection) : base(existingConnection, contextOwnsConnection) { } protected override void OnModelCreating(DbModelBuilder modelBuilder) { base.OnModelCreating(modelBuilder); //---关闭级联删除 // 禁用一对多级联删除 modelBuilder.Conventions.Remove(); // 禁用多对多级联删除 modelBuilder.Conventions.Remove(); } } }