【发布时间】:2013-04-18 02:23:58
【问题描述】:
我正在使用 EF 4.1 CodeFirst 创建我的数据库。似乎 EF 正在使用聚集索引创建所有主键,这在一种情况下(可能更多情况下)对我们来说并不是最优的。 有没有办法告诉 EF 用主键作为非聚集索引生成这张表?
当然,我们可以在创建数据库后使用自定义脚本手动完成,但是我们有很多指向该表的外键,如果有更好、更直接的解决方案,那将是一个相当不理想的解决方案在数据库创建期间已经做同样的事情的方法。 任何帮助表示赞赏
【问题讨论】:
-
IMO 这就是 DB First 被发明的原因。
-
@Tridus,afaik Model First 是“第一” :) 当然,如果使用 Model First,这将是小菜一碟,但 Code First 具有我认为“更好/更清洁”的优势,尽管现在是远非完美,正如在此示例中所见。到目前为止,我认为它缺乏提供的定制。
-
它更干净,除非它不是。 :) 对于像 DB First 这样的东西非常好,因为您只需在数据库端做任何您需要做的事情,然后告诉 EF“嘿,从中生成一些 POCO”。确实没有理由 EF 或您的代码需要知道服务器端正在使用什么类型的索引。
标签: entity-framework entity-framework-4.1 code-first