【发布时间】:2017-09-26 05:28:26
【问题描述】:
这是我正在尝试创建的超级简单的类。
public class Company
{
public int ID { get; set; }
[Column(TypeName = "VARCHAR(254)")]
[Index]
public string Name { get; set; }
[Index]
public int stupidField { get; set; }
}
我的目标是强制Name 是唯一的,所以我添加了装饰[Index(IsUnique = true)]。但是没有创建唯一索引,所以我想我将首先尝试解决创建任何索引的简单问题。因为我读到here 不能为varchar(max) 类型的列创建索引,所以我限制了Name 字段的长度。仍然没有运气。我什至尝试了几种不同的语法来限制字段的长度,但仍然没有索引。
为了查看是否存在字符串长度以外的问题,我创建了整数字段stupidField,但我也无法索引该字段。所以现在我完全不知道可能出了什么问题。请帮帮我!
Check out this screenshot 来自 MS SQL Server Management Studio,显示正在创建我的字段,但未创建索引。
注意:我确定迁移不是问题。 我在 SO 上读到的一些人正在更新他们的类,但由于迁移问题,这些更改没有反映在数据库中。这与这里无关。每次进行更改时,我都会删除数据库并重新创建它。 (我什至做了一些愚蠢的改变,比如重命名我的字段,只是为了确保我仍然可以影响数据库。)
【问题讨论】:
标签: c# entity-framework