我正在阅读来自 msdn的使用 Fluent API 文章配置关系。
但我被困在一个地方。
这些名称有两个部分:
- 配置必需到可选的关系(一对零或一)
- 配置两端都需要的关系(一对一)
这是代码:
// Map one-to-zero or one relationship
modelBuilder.Entity<OfficeAssignment>()
.HasRequired(t => t.Instructor)
.WithOptional(t => t.OfficeAssignment);
// Map one-to-one relationship
modelBuilder.Entity<OfficeAssignment>()
.HasRequired(t => t.Instructor)
.WithRequiredPrincipal(t => t.OfficeAssignment);
这两个生成相同的CREATE TABLE
查询,没有任何区别。
但是,当然必须有一些我看不到的差异。
WithOptional
和 和有什么不一样WithRequiredPrincipal
?我什么时候应该使用哪一个?
谢谢。