C# 如何使用FluentAPI添加OwnedAttribute的等效项?

C# 如何使用FluentAPI添加OwnedAttribute的等效项?,c#,entity-framework-core,ef-core-2.1,C#,Entity Framework Core,Ef Core 2.1,如果不使用TrackState上的属性或为publisher+文章指定OwnsOne,我似乎无法做到这一点。是否有任何方法可以在不使用属性的情况下全局标记TrackState为自有类型 (对于通过google提交的用户:如何使用fluent api向实体添加属性?) (实体+EF核心在单独的库中,我不希望依赖EF) 公共类发布程序 { 公共int Id{get;set;} 公共字符串名称{get;set;} 公共虚拟ICollection项目{get;set;}=new List(); 公共轨道

如果不使用TrackState上的属性或为publisher+文章指定OwnsOne,我似乎无法做到这一点。是否有任何方法可以在不使用属性的情况下全局标记TrackState为自有类型

(对于通过google提交的用户:如何使用fluent api向实体添加属性?)

(实体+EF核心在单独的库中,我不希望依赖EF)

公共类发布程序
{
公共int Id{get;set;}
公共字符串名称{get;set;}
公共虚拟ICollection项目{get;set;}=new List();
公共轨道状态{get;set;}
}
公共类轨道状态
{
公共日期时间?已创建{get;set;}
公共日期时间?已修改{get;set;}
}
公共类文章
{
公共int Id{get;set;}
public int PublisherId{get;set;}
公共字符串内容{get;set;}
公共轨道状态{get;set;}
}
公共类CustomContext:DbContext
{
公共自定义上下文()
{
}
公共CustomContext(DbContextOptions):基本(选项)
{
}
公共数据库集发布程序{get;set;}
公共DbSet项目{get;set;}
配置时受保护的覆盖无效(DBContextOptions Builder Options Builder)
{
optionsBuilder.UseSqlServer(“服务器=(localdb)\\mssqllocaldb;数据库=BananaDb;可信连接=True;”;
//基本配置(选项生成器);
}
模型创建时受保护的覆盖无效(ModelBuilder ModelBuilder)
{
//这是我本以为会奏效的尝试之一。
modelBuilder.Entity().HasAnnotation(“Owned”,true);
基于模型创建(modelBuilder);
}
}
您可以使用以下方法重载之一:

modelBuilder.Owned<TrackState>();
modelBuilder.Owned<TrackState>();
modelBuilder.Owned(typeof(TrackState));