2

在这里阅读这两个演练:

http://blogs.msdn.com/b/adonet/archive/2012/02/09/ef-4-3-code-based-migrations-walkthrough.aspx

http://blogs.msdn.com/b/adonet/archive/2012/02/09/ef-4-3-automatic-migrations-walkthrough.aspx

我找不到指定 SQL 数据表中列顺序的方法。看起来最后添加的属性总是映射到最后一列。

例子:

public class SampleData {
    public int Id { get; set; }
    public string Data2 { get; set; }
    public string Data3 { get; set; }
}

将创建一个具有列顺序的表:

身份证 | 数据2 | 数据3

更新类,如:

public class SampleData {
    public int Id { get; set; }
    public string Data1 { get; set; }
    public string Data2 { get; set; }
    public string Data3 { get; set; }
}

然后运行 ​​update 会将表更新为:

身份证 | 数据2 | 数据3 | 数据1

任何人都知道是否有办法在使用迁移时指定列顺序?

4

2 回答 2

2

除了创建新表并将所有数据从旧表移动到新表之外,别无他法。数据库中列的顺序并不重要——您有您的应用程序和 UI 可以根据需要对列进行排序。

于 2012-04-04T15:35:42.573 回答
0

根据 MS Docs:

更改表中的列顺序

...无法使用 Transact-SQL 语句执行此任务。

于 2018-11-01T11:31:43.383 回答