Entity framework 首先部署实体框架代码

Entity framework 首先部署实体框架代码,entity-framework,deployment,code-first,entity-framework-4.1,Entity Framework,Deployment,Code First,Entity Framework 4.1,我想我在开始我的项目之前应该考虑到这一点,但是我已经使用代码优先的方法成功地构建和测试了一个小型应用程序,我已经准备好将其部署到生产web服务器上 我已将文件夹移动到我的暂存服务器,一切正常。我只是好奇是否有一个建议的部署策略 如果我对应用程序进行更改,我不希望在应用程序重新启动时丢失所有数据 我是否应该从CodeFirst项目生成DB脚本,然后以这种方式将其移动到我的服务器 任何提示和指南链接都会很有用 谢谢。实际上,数据库初始值设定项仅用于开发。将此类代码部署到生产环境中是解决一些问题的最佳

我想我在开始我的项目之前应该考虑到这一点,但是我已经使用代码优先的方法成功地构建和测试了一个小型应用程序,我已经准备好将其部署到生产web服务器上

我已将文件夹移动到我的暂存服务器,一切正常。我只是好奇是否有一个建议的部署策略

如果我对应用程序进行更改,我不希望在应用程序重新启动时丢失所有数据

我是否应该从CodeFirst项目生成DB脚本,然后以这种方式将其移动到我的服务器

任何提示和指南链接都会很有用


谢谢。

实际上,数据库初始值设定项仅用于开发。将此类代码部署到生产环境中是解决一些问题的最佳方法。CodeFirst目前没有任何数据库演化方法,所以在新版本发布后,必须手动为数据库构建更改脚本。最简单的方法是在VS Studio 2010 Premium和Ultimate中使用数据库工具。如果您将有一个使用旧模式的数据库和一个使用新模式的数据库,VS将为您准备更改脚本。

以下是我遵循的步骤

  • 注释掉我正在使用的任何初始化策略
  • 为除EdmMetadata表之外的所有表生成schema+数据的数据库脚本,并在web服务器上运行它们。(当然,如果是生产服务器,请注意这一步。在我的情况下,在开发过程中,生产和开发中的数据是相同的。)
  • 将我的解决方案提交到subversion,然后触发TeamCity构建、测试并部署到web服务器(当然,对于这一步,您将有自己的方法,但以某种方式将网站部署到web服务器)
  • 你都完了
    初始值设定项和元数据表仅用于开发。

    请原谅我的无知。但是你能概述一下我应该采取什么步骤将这个项目转移到我的生产服务器上吗?我也想要更多的信息,@LadislavI也想要更多的信息!本地存在一些限制,例如4k字符串限制(我需要最大值用于生产)。。。那么,如何创建/获取最终的模式呢?是的,这基本上是一种手动方式,用于完成VisualStudio数据库项目自动为您完成的工作。注意:可以使用预处理器指令自动删除SetInitializer