62,242
社区成员




protected override void OnModelCreating(ModelBuilder modelBuilder)
{
var modelAssemblies = AppDomain.CurrentDomain.GetAssemblies().Where(a=>a.FullName.Contains("HIS.Models"));
if (modelAssemblies.Count() > 0)
{
foreach(var modelAssembly in modelAssemblies)
{
try
{
var models = modelAssembly.GetTypes();
foreach (var model in models)
{
var attr = model.GetCustomAttributes(typeof(SchemaAttribute), true);
if (attr?.Length>0)
{
var schemaattr = attr.First() as SchemaAttribute;
var schema = schemaattr.Name.ToLower();// assets
modelBuilder.Entity(model).ToTable(model.Name, schema);
Console.WriteLine($"loaded schema:{schema},table:{model.Name}");
}
else
{
modelBuilder.Entity(model).ToTable(model.Name);
Console.WriteLine($"loaded schema:default,table:{model.Name}");
}
}
}
catch(Exception err)
{
Console.WriteLine(err.Message);
}
}
}
//base.OnModelCreating(modelBuilder);
}
//PersonnelSchema是一个静态字符串
modelBuilder.Entity<Education>().ToTable(nameof(Education), PersonnelSchema);