Entity framework 4.1 实体框架4.1一对一关系可为空

Entity framework 4.1 实体框架4.1一对一关系可为空,entity-framework-4.1,Entity Framework 4.1,大家好 我需要一些关于EF4.1逻辑的帮助 我有一个客户数据表。我还有另外一个表格,里面有一个调查,需要时我需要编译。 所以一开始我可以插入一个新客户,几天后我会填写调查表。然后,这种关系必须是一对一的,并且是可选的(只是因为这项调查永远无法为客户编制) 我在网上查了一些例子,但我真的被卡住了 提前感谢。只需定义您的实体,如: public class Customer { public int Id { get; set; } ... public virtual Su

大家好

我需要一些关于EF4.1逻辑的帮助 我有一个客户数据表。我还有另外一个表格,里面有一个调查,需要时我需要编译。 所以一开始我可以插入一个新客户,几天后我会填写调查表。然后,这种关系必须是一对一的,并且是可选的(只是因为这项调查永远无法为客户编制)

我在网上查了一些例子,但我真的被卡住了


提前感谢。

只需定义您的实体,如:

public class Customer
{
    public int Id { get; set; }
    ...
    public virtual Survey Survey { get; set; }
}

public class Survey
{
    [Key, ForeignKey("Customer")]
    public int Id { get; set; }
    public virtual Customer Customer { get; set; }
}
如果您不喜欢数据批注,请删除它们并将其放入上下文中的
OnModelCreating

modelBuilder.Entity<Customer>()
            .HasOptional(c => c.Survey)
            .WithRequired(s => s.Customer);
modelBuilder.Entity()
.has可选(c=>c.Survey)
.需要(s=>s.Customer);

这是否意味着调查可以在没有客户的情况下进行?你说可选是什么意思?对不起,我不清楚。客户可以在没有保险的情况下生存。这必须是一对一的关系,其中调查可以是可选的。谢谢,我忘了提到必须在itOr上具有引用完整性。您可以创建一个单独的映射类,该类继承自EntityTypeConfiguration最终开始从4.0 CTP5升级到4.2。。。花费数小时跟踪1到0..1关系的更改…已更改.WithRequired(s=>s.Customer)