irc-netcore-api/IRaCIS.Core.Test/CodeFirstTest/MSSQL/IRCContext.cs

52 lines
1.6 KiB
C#

using System;
using System.Collections.Generic;
using System.Linq;
using System.Reflection;
using IRaCIS.Core.Test.CodeFirstTest.MSSQL;
using Microsoft.EntityFrameworkCore;
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<TestOne> TestOne { get; set; }
public virtual DbSet<TestMany> TestMany { get; set; }
protected override void OnConfiguring(DbContextOptionsBuilder optionsBuilder)
=> 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);
}
partial void OnModelCreatingPartial(ModelBuilder modelBuilder);
}