实体框架5 - 不填充外键

时间:2013-06-26 12:03:40

标签: entity-framework-5

我对Entity Framework很新,所以如果这是一个愚蠢的问题,我道歉......

这是我的POCO:

[Table("RegistrationCodes")]
public class RegistrationCode
{
    [Key]
    [DatabaseGeneratedAttribute(DatabaseGeneratedOption.Identity)]
    public int Id { get; set; }

    [Required]
    public Guid Code { get; set; }

    public int? UserId { get; set; }

    [ForeignKey("UserId")]
    public UserProfile User { get; set; }

    [StringLength(500)]
    public string Notes { get; set; }
}

当我使用下面的代码从我的DBSet中检索对象时,UserId始终为空。

return this.Context.RegistrationCodes.FirstOrDefault(c => c.Code == code);

我已检查数据库并验证UserId不为null。此外,我已经进行了分析,可以看到正在从数据库中请求UserId。

非常感谢任何帮助。

1 个答案:

答案 0 :(得分:1)

哦,我的,我不觉得愚蠢......

这是发生了什么,我运行代码,我可以看到UserId字段在数据库中更新。每次我重新启动应用程序时,代码迁移都会运行add add Add Add Manager,这会使UserId列无效。

我们可以一起删除这个问题吗?