无法设置EF代码优先级的PK

时间:2013-08-12 15:05:35

标签: c# .net entity-framework

我有一个Device类,其主键是序列号ala:

public class Device
{
    /// <summary>
    /// Device serial number
    /// </summary>
    [Key]
    public int Serial { get; set; }
}

出于某种原因,Entity Framework实际上不会让我在第一次创建这个类时设置主键。它改为为Serial创建自己的号码。我错过了什么?

context.Devices.AddOrUpdate(new Device()
{
    Serial = 89484848 // never gets set, EF sets its own PK
});

1 个答案:

答案 0 :(得分:0)

我认为你应该将密钥设置为 DeviceId Id 而不是Serial(与表名不同)

您可以查看此链接msdn blog条目