如何使用导航属性创建一个实体,而不创建外键。
例如:
class EntityType {Id,Code,Description}
类实体{Id,Name,Age, EntityType ,EntityTypeId}
class EntityHistory {Id,EntityId,Name,Age, EntityType ,EntityTypeId}
在我的Entity类中,我想要正常的导航属性和外键。 但是在EntityHistory中,我想要导航属性,我想拥有EntityTypeId,但我不想在EntityHistory和EntityType之间创建数据库中的关系。
在我的模型中,EntityHistory是来自Entity的审计表,它只通过Entity Trigger编写,在这种情况下,在数据库中创建关系没有多大意义(例如,它减慢太多百万条记录的批量插入) 但我想要导航属性,因为我想将信息检索到用户界面。
所以我的最终目标只是阻止SQL Server检查外键中的约束。
THKS
答案 0 :(得分:0)
您必须在配置中创建关系的两端,如下所示:
1 =>许多:
HasRequired(charac => charac.Movie)
.WithMany(movie => movie.Characters);
许多=→1:
HasMany(movie => movie.Characters)
.WithRequired(character => character.Movie);
深度信息here。