2012-05-20 141 views
1

我有一个MVC3网站,我一直在玩,数据库是相当丰富。我需要更改基础模型,但当然,标准方法会删除所有数据。有了CREATE SQL(所以我可以确保所有字段/关系都与模型一致),并且计算出的散列(因此EF认为模型与数据库相匹配)将允许我手动更改数据库。EF代码第一代数据库代

有没有办法询问一个DataContext(或其它对象): 1.获取SQL它使用生成dataschema;和 2.获取ERM元数据散列

我已经考虑了一些其他迁移选项,但只是想探索此途径。

编辑:这是EF4.1,并且在SQL 2008 R2上运行,如果这是相关的。

感谢 安德鲁

回答

2

你可以用EF迁移做到这一点。您需要将您的项目升级到EF 4.3。你会使用“Update-Database -Script”ps命令。

这里的ASP.Net团队博客的链接就可以了:http://blogs.msdn.com/b/adonet/archive/2012/02/09/ef-4-3-code-based-migrations-walkthrough.aspx

Pluralsight也有它的课程。他们也有免费试用。 http://www.pluralsight-training.net/microsoft/Courses/TableOfContents?courseName=efmigrations

+0

虽然这可能在理论上回答这个问题,但[这将是更可取的](http://meta.stackexchange.com/q/8259)在这里包括答案的基本部分,并提供供参考的链接。 –

+0

请扩大答案,包括链接文本的相关部分。这有助于我们打击链接腐烂。如果这些链接中断,这个答案会失去所有的背景和价值。 –

+0

哪一部分失去了连接?我给他提供确切的技术来解决他的问题的部分或者我给他准确的powershell命令的部分?我可以删除链接或删除答案,但这似乎会损害OP。 – tzerb