entity-framework - 首先设置 "Default value or binding" Entity Framework 代码

标签 entity-framework sql-server-2012

我需要首先在 EF 代码中设置 sql server 列“默认值或绑定(bind)”OnModelCreating(或作为属性属性)。原因是我想使用 sql 2012 序列而不是自动生成的标识。

要在 sql 2012 中使用序列,我需要实现以下目标:

SQL 2012 sequence

如何使用 Entity Framework 4.3 代码优先来完成此操作?

最佳答案

我认为 Entity Framework CodeFirst 尚不支持此功能,因此只能借助 XML 映射 (EDMX) 来设置默认值。

您可以在此处为新功能投票: http://data.uservoice.com/forums/72025-ado-net-entity-framework-ef-feature-suggestions/suggestions/2541076-allow-using-sql-server-2012-sequence-for-generatin

据我所知,FluentAPI 使您能够使用 DatabaseGenerateOption http://msdn.microsoft.com/en-us/library/system.componentmodel.dataannotations.databasegeneratedoption(v=vs.103).aspx

protected override void OnModelCreating(DbModelBuilder modelBuilder)  
{
   modelBuilder.Entity<YourEntity>().Property(p => p.YourColumn)  
          .HasDatabaseGeneratedOption(DatabaseGeneratedOption.Identity) //None,Identity,Computed

}

关于entity-framework - 首先设置 "Default value or binding" Entity Framework 代码,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9554663/

相关文章:

c# - EntityFramework 代码优先中的 DateTime 列未按预期工作

oracle - 使用 linq toEntity (EF) 和 Oracle 12.1 忽略搜索重音

c# - Entity Framework : multiple from is generating cross join

sql - 在 Microsoft SQL Server 中减去两个日期

c# - 从 SQL Server 2012 上的 SSIS 目录执行 SSIS 包

sql-server - 我有一个带有 UNION 的 SQL View ,当通过 Entity Framework 使用时,结果是错误的。为什么?

c# - 为什么存储库模式在 Entity Framework 中被广泛使用,好像它很复杂?

sql-server - 从 SQL Server 2012 中的年、周数、日名称检索日期

T-SQL 检查一个表中的日期是否在另一个表中的两个日期之间,然后设置值

c# - 将小数插入 sql 会导致插入零数而不是接近零的十进制数