Je n'arrive pas à faire en sorte que ma migration Code-First crée ma base de données SQL Azure.
Il ne cesse de se plaindre de l'absence de prise en charge par SQL Azure des tables sans index en grappe et je ne trouve pas de solution pour créer ma base de données.
Nota: J'utilise CreateDatabaseIfNotExists
pour créer les tables de suivi des modifications lors de la première création de la base de données, car apparemment DropCreateDatabaseIfModelChanges
ne fait pas ça pour vous
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");
}
}
Si j'essaie de "mettre à jour la base de données", j'obtiens
Tables without a clustered index are not supported in this version of SQL Server. Please create a clustered index and try again.
La base de données n'est pas créée.
UPDATE : Je suis parti de zéro et j'ai suivi ce guide pour activer les migrations automatiques (j'ai supprimé la base de données et commencé avec une base inexistante pour ne pas avoir à supprimer le code Up/Down de la migration initiale).
Cette fois-ci, ma base de données a été créée avec succès (je n'étais pas arrivé à ce stade auparavant) mais les tables ne sont pas créées et je reçois toujours la même erreur que précédemment concernant l'absence de support pour les tables sans index en grappe.
Veuillez me conseiller