因此,既然现在在最新的Entity Framework 6.1 Beta版本中都可以使用索引,那么是否甚至有可能以代码优先的方式创建与该SQL语句相等的索引?
CREATE NONCLUSTERED INDEX [Sample1] ON [dbo].[Logs] ([SampleId],[Date]) INCLUDE ([Value])
严格来说,在代码优先迁移中这一直是可能的,因为您可以在迁移中运行sql:
public partial class AddIndexes : DbMigration { private const string IndexName = "IX_LogSamples"; public override void Up() { Sql(String.Format(@"CREATE NONCLUSTERED INDEX [{0}] ON [dbo].[Logs] ([SampleId],[Date]) INCLUDE ([Value])", IndexName)); } public override void Down() { DropIndex("dbo.Logs", IndexName); } }
但是我意识到您可能实际上是在问是否可以使用6.1中引入的IndexAttribute创建索引,但是要使用Include列-答案是“否”