使用EF Code-First实现星型DB结构

时间:2014-09-12 20:07:18

标签: entity-framework ef-code-first code-first ef-migrations

我注意到没有人使用Code-First实现启动数据库结构。

以下是一个例子:

我们有模型Log (Id, Message) 我们有模型A1 (Id, Name, ICollection<Log> Logs)

如果只有A1,那么EF Migration脚本将在Log table

中创建A1_Id

当我们有很多带有ICollection<Log> Logs的模型时会出现问题 因为每个模型都会添加自己的&#34; _Id&#34;列到日志表。

有没有办法实施 这个结构/表

A1 (Id, Name, ... ,  ICollection<Log> Logs)
A2 (Id, Name, ... ,  ICollection<Log> Logs)
....
A102 (Id, Name, ... ,  ICollection<Log> Logs)

Log (Id, Message, OwnerId)

所以每次我们需要在A77中记录日志

EF将执行此操作(从Log中选择*,其中OwnerId =&#39;来自A77&#39;的记录ID)

我也不想创建102个外键约束。

有谁知道怎么做?我想它必须以某种方式在protected override void OnModelCreating(DbModelBuilder modelBuilder)方法中完成。

0 个答案:

没有答案