.NET 4.0上的实体框架5 - DatabaseGeneratedOption.Identity未定义

Hot*_*key 13 entity-framework .net-4.0 entity-framework-5

我需要在.NET 4上使用EF5,并且在使用HasDatabaseGenerationOption.Identity映射我的类时遇到了引用问题,该版本在4.0版本的库中不存在.

以下是失败的:

this.Property(t => t.DeploymentLogId)
              .HasDatabaseGeneratedOption(DatabaseGeneratedOption.Identity);
Run Code Online (Sandbox Code Playgroud)

有谁知道一项工作?

Tho*_*sen 23

使用NuGet将EntityFramework添加到面向.NET 4.5的项目中,将添加EntityFramework 5.0.

如果稍后将项目更改为目标.NET 4.0,则仍会引用EntityFramework 5.0.

要修复它,请使用NuGet卸载EntityFramework并将其添加回NuGet.这将添加EntityFramework 4.4,这是.NET 4.0的最后一个受支持的版本.

如果它仍然不起作用,可能会有一些特定EF版本的引用App.config.这些可以删除.


jru*_*ell 11

在EF 5.0中更改了命名空间.尝试添加此:

using System.ComponentModel.DataAnnotations.Schema;
Run Code Online (Sandbox Code Playgroud)


Mar*_*eta 3

您是否尝试过使用数据注释?

public class DeploymentLog
{
   [DatabaseGenerated(DatabaseGeneratedOption.Identity)]
    public int DeploymentLogId { get; set; }
Run Code Online (Sandbox Code Playgroud)