EF CodeFirst中的复杂主键和约束错误

时间:2015-11-19 23:31:32

标签: sql-server azure annotations ef-code-first

我在此表中有一个复杂的主键,定义如下

    [Key, Column(Order = 1), DatabaseGenerated(DatabaseGeneratedOption.None)]
    public int SymbolId { get; set; }

    [Key, Column(Order = 2)]
    public SymbolType SymbolType { get; set; }

    [Key, Column(Order = 3), DataType(DataType.Date)]
    public DateTime Date { get; set; }

我可以向表中添加数据,问题是我每次都通过为同一个SymbolId添加数据进行测试,而不仅是SymbolId不是列中显示的内容,它似乎是一个自动增量我将其指定为DatabaseGeneratedOption.None类型时的列。实际的SymbolId是10,这是每个条目的SymbolId列中的内容。

enter image description here

以下是SQL Azure

中的表格

enter image description here

如果有人可以告诉我我的问题所在,那将非常感激。

2 个答案:

答案 0 :(得分:0)

尝试在天蓝色上重现它但不能。 使用类似的架构设置对我有用,这是我的schema and data

答案 1 :(得分:-3)

您在数据库设计中遇到问题。

没有必要将其中一个复合键设为Auto Increament。

复合键不应该是自动增量。