Code First Migrations in SQL Azure - Tables without a clustered index are not supported
azure, azure-sql-database, ef-code-first, entity-framework, sql
Solution
Turns out to be a bug in Entity Framework 6 -Alpha 3. I guess I should've mentioned that.
https://stackoverflow.com/a/15282861/1267778
Problem
I can't seem to get my Code-First Migration to create my SQL Azure database. It keeps complaining about SQL Azure's lack of support for tables without clustered indexes and I cant find a way around to create my database. Note: I'm using `CreateDatabaseIfNotExists` to create the change tracking tables on the first time database creation because apparently `DropCreateDatabaseIfModelChanges` doesn't do that for you ``` public partial class IUnityDbContext : DbContext { public IUnityDbContext() : base("Name=IUnityDbContext") { Database.SetInitializer(new CreateDatabaseIfNotExists<IUnityDbContext>()); //Database.SetInitializer(new DropCreateDatabaseIfModelChanges<IUnityDbContext>()); } public DbSet<User> Users { get; set; } protected override void OnModelCreating(DbModelBuilder modelBuilder) { modelBuilder.Configurations.Add(new UserMap()); base.OnModelCreating(modelBuilder); } } public partial class Initial : DbMigration { public override void Up() { CreateTable( "dbo.Users", c => new { ... } ).PrimaryKey(u => u.UserId, clustered: true); } public override void Down() { DropTable("dbo.Users"); } } ``` If I try to `Update-Database I get ``` Tables without a clustered index are not supported in this version of SQL Server. Please create a clustered index and try again. ``` The database is not created. UPDATE: I started from scratch and followed this guide to enable Automatic Migrations (scratched the database and started with a non-existing one so I didn't have to remove the Up/Down code from the Initial migration) This time my database was successfully created (Did not get this far before) but the tables are not created and I still get the same error as before about no support for tables without clustered indexes. Please advise