数据迁移代码优先 Table 顺序是字母顺序

Data Migration Code First Table order is alphabetical

class 的属性按照合理的方式排序,例如

        public int Id { get; set; }
        public string Name{ get; set; }
        public int CountryId { get; set; }
        public Country Country { get; set; }
        public Address {get; set;}
        public City {get; set;}
        [Timestamp]
        public byte[] RowStamp { get; set; }

运行 数据迁移后,table 生成的列按排序顺序排列。 生成的 table 具有 Id 列,后跟 City 等等。我喜欢保持 class 的顺序 有什么方法可以避免在数据迁移时重新排序列?

您可以使用 Column Attributes(即 DataAnnotations)指定顺序,但我会警告您维护起来会很麻烦(太麻烦了,IMO)。尽管如此,它还是这样的:

[Column("Id" , Order = 1)]
public int Id { get; set; }

查看Ordering Column Attributes in Entity Framework