Modifier l'ordre alphabétique des colonnes de la base de données SQL Server dans Entity Framework, code-first, en ordre séquentiel

entity-framework-core

Question

Je dois d'abord désactiver l'ordre alphabétique dans le code.

Voici ma classe simplifiée

public class Person
{
    [Key,Column("PersonId")]
    public int Id { get; set; }
    [MaxLength(50)]
    public string PersonName{ get; set; }
    public DateTime? JoinDate{ get; set; }
    public int? Gender{ get; set; }
}

et quand je lance les commandes pour générer la base de données

dnx ef migrations add InitialMigration
dnx ef  database update

Les colonnes de la base de données autres que la clé primaire sont générées par ordre alphabétique lorsque je la visualise en mode conception dans SQL Server 2012.

Comment puis-je le forcer à créer les colonnes dans l'ordre séquentiel tel qu'il apparaît dans la classe.

J'ai jeté un œil sur github et n'ai pu trouver que ce problème qui n'explique pas comment le désactiver.

Réponse populaire

Ce comportement n'est pas pris en charge de première classe dans les migrations EF7. Vous pouvez contourner ce problème en spécifiant explicitement SQL vos opérations de migration.

Cela signifie qu'au lieu d'utiliser la méthode "CreateTable" dans vos migrations, vous devez écrire explicitement le code SQL.

migrationBuilder.Sql("CREATE TABLE Person ...");


Sous licence: CC-BY-SA with attribution
Non affilié à Stack Overflow
Est-ce KB légal? Oui, apprenez pourquoi
Sous licence: CC-BY-SA with attribution
Non affilié à Stack Overflow
Est-ce KB légal? Oui, apprenez pourquoi