如何首先使用EF 4代码将对象映射到视图?

Ada*_*ell 19 .net entity-framework entity-framework-4 ef4-code-only

如何首先使用EF 4代码将实体映射到数据库视图?

有没有办法通过派生EntityConfiguration类来做到这一点?

Ada*_*ell 22

是! 我找到了答案:

您当然可以使用Code First映射到视图,只需告诉Code First它是一个表,并且它将对表的视图使用相同的SQL.显然,如果您的视图不可写,那么如果您尝试更新基于视图的实体中的值,则保存将失败,但我们将委托给数据库,因此如果您不更新这些实体,那么您赢了没有任何问题.

http://social.msdn.microsoft.com/Forums/en-US/adonetefx/thread/f154595c-717e-4703-a81d-ee63633a481e

  • 我喜欢使用现有数据库"Code Second"调用Code First (10认同)
  • @mjmcloug这里有一些hackery.如果我们有EF创建数据库,我们如何告诉它不创建表?我正在创建一个表,放下它并在播种时创建一个视图. (6认同)
  • 很好,我不知道这一点,但它仍然是一个黑客而不是一个功能. (4认同)
  • 据推测,如果您正在尝试将模型映射到视图,那么您谈论的是现有数据库.虽然在讨论现有数据库时"代码优先"可能是一个令人困惑的名称,但您可以将其与现有数据库一起使用. (3认同)