【问题标题】:EF 4.3.1 code first table index mapping or creationEF 4.3.1 代码优先表索引映射或创建
【发布时间】:2012-08-05 08:34:16
【问题描述】:

我一直在寻找一种方法来首先从 EF 代码创建或配置表上的特定索引,但真的找不到任何东西。映射流利的 Api 似乎没有公开任何方法来做到这一点。我错过了什么?

【问题讨论】:

  • 你没有错过任何东西。代码优先缺少这一点。见stackoverflow.com/questions/8262590/…
  • 谢谢。我几乎可以肯定,使用流利的 api 或数据注释是不可能的,但确认总是很好的。我会尝试一些解决方法,如果我发现一些有趣的东西,我会在这里发布。再次感谢

标签: entity-framework mapping code-first table-index


【解决方案1】:

您可以将索引创建添加到链接答案中提到的自定义数据库初始化程序,也可以使用code based migrations。迁移提供support for index creation

【讨论】:

  • 是的,但是我觉得必须为某些不是真正的数据库更改而是初始定义的一部分的东西添加迁移是错误的。创建索引或约束应该是映射过程和迁移过程的一部分。不过,作为一种解决方法是一个不错的方法。
  • 您可以将初始模型定义搭建为基于初始代码的迁移并添加索引创建。无论如何,目前没有更好的方法。
  • 感觉不对的原因是你了解数据库。我会声称代码首先是为那些不这样做的人准备的。
  • 如果您不了解数据库,您很可能不了解索引。我认为使用迁移时会自动创建一些索引。
  • 通过映射,确实创建了索引,其中一些甚至是多余的。我不会说代码优先适用于不了解 DB 的人,我喜欢它,而且我喜欢它可以开箱即用地用于一些简单但常见的场景的事实。我错过了一些高级场景的一些高级配置功能。这里发布的就是其中之一,也是this one
猜你喜欢
  • 2014-08-31
  • 1970-01-01
  • 1970-01-01
  • 2023-03-25
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2013-01-14
相关资源
最近更新 更多