我对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。
非常感谢任何帮助。
答案 0 :(得分:1)
哦,我的,我不觉得愚蠢......
这是发生了什么,我运行代码,我可以看到UserId字段在数据库中更新。每次我重新启动应用程序时,代码迁移都会运行add add Add Add Manager,这会使UserId列无效。
我们可以一起删除这个问题吗?