gpt4 book ai didi

c# - 在 Entity Framework 上为 NULL 值创建 UNIQUE Filtered Index

转载 作者:行者123 更新时间:2023-11-30 16:56:45 26 4
gpt4 key购买 nike

我正在尝试使用 Entity Framework 创建一个表,该表具有针对 NULL 值的 UNIQUE 过滤索引(例如,允许 Null 值重复)。

我正在使用 Fluent API 并具有此实体属性:

modelBuilder.Entity<Client>().Property(c => c.Barcode)
.HasMaxLength(20)
.IsRequired()
.HasColumnAnnotation(
IndexAnnotation.AnnotationName,
new IndexAnnotation(new IndexAttribute("IX_ClientBarcode") { IsUnique = true }));

我发现 SQL Server 2008 允许对具有过滤空值的唯一列进行此操作:

CREATE UNIQUE INDEX indexName ON tableName(columns) INCLUDE includeColumns WHERE columnName IS NOT NULL

这可能吗?因为我使用的是 LocalDB。

最佳答案

目前我认为这是不可能的:

http://gavindraper.com/2014/06/26/entity-framework-fluent-api-and-indexing/

我将使用 IDatabaseInitializer 在使用 dbContext.Database.ExecuteSqlCommand() 创建数据库后添加索引。希望将来的版本中会提供支持。

关于c# - 在 Entity Framework 上为 NULL 值创建 UNIQUE Filtered Index,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27555538/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com