72 lines
2.5 KiB
C#
72 lines
2.5 KiB
C#
using Microsoft.EntityFrameworkCore;
|
|
using Microsoft.EntityFrameworkCore.Migrations;
|
|
using System;
|
|
using System.Linq;
|
|
using System.Reflection;
|
|
|
|
namespace IRaCIS.Core.Test.CodeFirstTest.MSSQL;
|
|
|
|
public partial class IRCContext : DbContext
|
|
{
|
|
public IRCContext()
|
|
{
|
|
}
|
|
|
|
public IRCContext(DbContextOptions<IRCContext> options)
|
|
: base(options)
|
|
{
|
|
}
|
|
|
|
//public virtual DbSet<TrialImageDownload> TrialImageDownload { get; set; }
|
|
//public virtual DbSet<TestNew> TestNew { get; set; }
|
|
//public virtual DbSet<Subject> Subject { get; set; }
|
|
//public virtual DbSet<SubejectVisit> SubejectVisit { get; set; }
|
|
//public virtual DbSet<Dictionary> Dictionary { get; set; }
|
|
//public virtual DbSet<ReadingClinicalData> ReadingClinicalData { get; set; }
|
|
//public virtual DbSet<ReadModule> ReadModule { get; set; }
|
|
//public virtual DbSet<TestStringLength> TestStringLength { get; set; }
|
|
|
|
|
|
|
|
public virtual DbSet<TestStr> TestStr { get; set; }
|
|
public virtual DbSet<Project> Project { get; set; }
|
|
|
|
public virtual DbSet<ProjectUser> ProjectUser { get; set; }
|
|
public virtual DbSet<ProjectUser2> ProjectUser2 { get; set; }
|
|
|
|
|
|
|
|
protected override void OnConfiguring(DbContextOptionsBuilder optionsBuilder)
|
|
{
|
|
// 替换默认的 MigrationsSqlGenerator
|
|
optionsBuilder.ReplaceService<IMigrationsSqlGenerator, NoForeignKeyMigrationsSqlGenerator>();
|
|
optionsBuilder.UseSqlServer("Server=106.14.89.110,1433;Database=IRC_Code;User ID=sa;Password=mssql_KnTs2a;TrustServerCertificate=true");
|
|
|
|
|
|
}
|
|
|
|
protected override void OnModelCreating(ModelBuilder modelBuilder)
|
|
{
|
|
//遍历实体模型手动配置
|
|
var typesToRegister = Assembly.GetExecutingAssembly().GetTypes().Where(q => q.GetInterface(typeof(IEntityTypeConfiguration<>).FullName) != null);
|
|
foreach (var type in typesToRegister)
|
|
{
|
|
dynamic configurationInstance = Activator.CreateInstance(type);
|
|
modelBuilder.ApplyConfiguration(configurationInstance);
|
|
}
|
|
|
|
|
|
|
|
OnModelCreatingPartial(modelBuilder);
|
|
}
|
|
protected override void ConfigureConventions(ModelConfigurationBuilder configurationBuilder)
|
|
{
|
|
|
|
//configurationBuilder.Conventions.Add(_ => new NoForeignKeyConvention());
|
|
//针对字符串使用默认的长度配置
|
|
configurationBuilder.Conventions.Add(_ => new MaxStringLengthConvention());
|
|
}
|
|
|
|
partial void OnModelCreatingPartial(ModelBuilder modelBuilder);
|
|
}
|