我对 Code First 和 Code Migrations 有一些问题。
我有一个 User 类和一个 UserData 类(带有可选信息,例如名字/姓氏),但是当我尝试运行“Add-Migration”或“Update-Database”命令时,出现了几个错误。
我创建了用户类:
public class User
{
public int ID { get; set; }
public string UserName { get; set; }
public string EmailAddress { get; set; }
public DateTime DateOfBirth { get; set; }
public UserData UserData { get; set; }
public int UserDataID { get; set; }
}
和 UserData 类:
public class UserData
{
public int ID { get; set; }
public string FirstName { get; set; }
public string LastName { get; set; }
public string City { get; set; }
public string Country { get; set; }
}
使用此设置,我收到错误:
为表“用户”指定了多个标识列。每个表只允许一个标识列。
尝试运行“更新数据库”时(“添加迁移”命令运行良好)。
我已经尝试将public User User { get; set; }
和添加public int UserID { get; set; }
到 UserData.cs,但随后出现“Add-Migration”命令错误:
无法确定类型“UserData”和“User”之间关联的主体端。此关联的主体端必须使用关系流式 API 或数据注释显式配置
知道如何解决这个问题吗?
提前致谢。