using CloudBuilder.Core.DependencyInjection.EFCore; using Microsoft.EntityFrameworkCore; using System.Reflection; namespace CloudBuilder.AI.Entity { public class CloudBuilderAIRegistEntity : IMasterRegistEntityType { /// ///注入模块内的所有实体类 /// /// public void RegistEntity(ModelBuilder builder) { string _assemblyName = Assembly.GetExecutingAssembly().GetName().Name; //注入所有Entity实体类 AddEntityType(builder, _assemblyName); //如果Entity实体类不是单一主键,要单独重写注入 RegistKeys(builder); } public void AddEntityType(ModelBuilder builder, string _assemblyName) { RegistEntityHelper.AddMasterEntityType(builder, _assemblyName); } /// ///如果存在多个主键的,要在RegistKeys方法注入 ///builder.Entity().HasKey(c => new { c.TableName, c.FieldName }); ///builder.Entity(eb => { eb.HasNoKey(); }); /// /// public void RegistKeys(ModelBuilder builder) { //***BEGIN*** builder.Entity(eb => { eb.HasNoKey(); }); //***END*** } } }