我正在努力将数据库优先项目转换为代码优先项目。
我有以下类(class)并且我正在使用 EF Core 2.0:
public class WorkUser
{
public int WorkUserId { get; set; }
public int UserId { get; set; }
}
我尝试了以下方法,不确定是否正确。
public class WorkUser
{
[DatabaseGenerated(DatabaseGeneratedOption.Identity)]
public int WorkUserId { get; set; }
[Key]
public int UserId { get; set; }
}
我希望将 WorkUserId
作为自动增量属性,并将 UserId
作为主键。 UserId
值来自另一个表。所以希望这是主键但没有自动增量。
如何实现?
最佳答案
以下工作如我所料:
public class WorkUser
{
[DatabaseGenerated(DatabaseGeneratedOption.Identity)]
public int WorkUserId { get; set; }
[Key]
[DatabaseGenerated(DatabaseGeneratedOption.None)]
public int UserId { get; set; }
}
关于c# - Entity Framework Core 2.0 自动增量和主键映射,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48185367/