如何在创建对象时从实体框架生成Guid

时间:2012-06-12 16:45:50

标签: c# wpf entity-framework

我已经将数据网格绑定到上下文并在运行时添加了一些行,但它生成了一个异常,并且由于Guid类型的属性只生成空Guid而无法保存更改。
如何在创建对象时从实体框架生成Guid?

3 个答案:

答案 0 :(得分:3)

你可以装饰你的Guid财产 [DatabaseGenerated(DatabaseGeneratedOption.Identity)]

[DatabaseGenerated(DatabaseGeneratedOption.Identity)]
public Guid Id { get; set; }

每次插入时都会生成一个新的行ID。

答案 1 :(得分:0)

换句话说,你可以为YourEntity制作一个像这样的部分课程:

public partial class YourEntity
{
   public Guid ID { get; set;}    
   public YourEntity()
   {
      ID = Guid.NewGuid();
   }
}

答案 2 :(得分:0)

您只需更改属性' StoreGeneratedPattern'为了领域的身份。

所以你的对象' SalesOrderHeader'有一个字段' rowguid'。只需选择字段并转到属性。

选择' StoreGeneratedPattern'并选择“身份”。

我应该指出,我也是Entity Framework的新手,但这对我有用。我只希望在更新模型时保留此设置。如果不是,那将是一种痛苦。

谢谢, 灰色。