我正在尝试将我的模型优先项目转换为代码优先项目,因为我可以看到使用图形设计器处理模型会变得困难。不幸的是,通过我所有的谷歌搜索,我找不到一个描述如何进行代码优先开发的好引用。大多数资源都已过时(因此过时,他们将其称为纯代码),而我能找到的其他引用资料似乎假设您了解上下文构建和代码优先的基础知识(例如,他们将代码引用到构建上下文但不描述该代码实际应该去哪里,以及它是如何实际运行的)。
是否有任何适合代码优先开发的资源,描述如何将您的 POCO 实体映射到数据库模式?
编辑: 好吧,我现在先放弃代码。我在回答中链接到的入门文档似乎有一些缺陷(例如,上下文构建和 EntityConnection dbConnection 类型的一些细节,以及一些关系映射代码没有按照他们编写的方式编译)。我花了 2 天时间试图找到任何方法让它工作,我接近了(我认为)但最终失败了,因为谷歌完全没有帮助。
截至目前,我认为继续进行模型优先开发对我来说更有成效,并希望到 edmx 变得笨拙时,代码优先不再处于 CTP 状态,并且有更好的(如在某些实际存在)文档。
我将 POCO 上的答案标记为正确答案,因为虽然它实际上不是代码优先,但如果你想在代码中包含实体,它可能是最好的选择,即使它需要数据库和 EDMX在它起作用之前从它生成。
最佳答案
嗯,看来我离得更近了。
似乎 Code-First 并未包含在 VS2010 的最终发布版本中。因此,为了使用它,您必须在 http://www.microsoft.com/downloads/details.aspx?FamilyID=af18e652-9ea7-478b-8b41-8424b94e3f58&displayLang=en 下载 Entity Framework CTP 3。 .这似乎是 EF 的最新 CTP。
安装后,您必须添加对 Microsoft.Data.Entity.CTP 的引用。
最后,CTP 下载页面将我带到了 http://blogs.msdn.com/adonet/pages/feature-ctp-walkthrough-code-only-for-the-entity-framework.aspx .虽然页面上的日期是 2009 年 6 月,但它声称它已经更新并且 CTP(2 月发布)指向它,因此它可能仍然准确。明天我会试一试,看看它到底有多准确。
关于c# - 是否有用于开发 Entity Framework 4 代码优先的任何好的资源?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2890556/