我有一个使用两列(REQID
和REQ_SUBID
)的主键表,我有一个生成这些值的触发器,但前提是它们没有定义。在EF表示中,我使用的是DatabaseGenerated属性
[Key]
[DatabaseGenerated(DatabaseGeneratedOption.Identity)]
[Column("REQID", Order = 0)]
public string RequestId { get; set; }
[Key]
[DatabaseGenerated(DatabaseGeneratedOption.Identity)]
[Column("REQ_SUBID", Order = 1)]
public int RequestSubId { get; set; }
但有时我想在代码中设置REQID
值并将其保存到数据库中,但如果我尝试这样做,我会得到以下异常:
ReferentialConstraint中的依赖属性映射到存储生成的列。专栏:' REQID'。
这里有什么方法可以解决这个问题吗?
答案 0 :(得分:0)
如果您需要自动生成可以放置在构造函数中的unic id,则不能在字符串属性上使用[DatabaseGenerated(DatabaseGeneratedOption.Identity)]
public class myEntity{
MyEntity(){
RequestId = Guid.NewGuid().ToString();
}
}