我必须从开发环境将asp.net mvc 3应用程序部署到生产环境中。
开发环境
生产环境:
我已经使用Visual将应用程序发布到使用FTP发布方法的生产环境。当我浏览应用程序时,它会抛出以下异常:
System.Data.SqlClient.SqlException:无效的对象名'dbo.User‘。
由于我还没有在生产环境的sql server 2005数据库中构建表,所以会抛出上述异常。使用Visual将开发环境数据库部署到生产环境数据库有什么简单的方法吗?还是需要在生产环境中手动构建每个表?
发布于 2012-11-28 03:32:58
虽然我还没有尝试过,但可能是您正在寻找的解决方案:http://msdn.microsoft.com/en-US/data/jj591621。
另一种实现此功能的方法是使用微软的Server数据工具项目:http://msdn.microsoft.com/en-us/data/tools.aspx。要获得此功能,您以前必须支付Visual高级或更高的许可证,但现在使用Server数据工具是免费的。我曾经使用过用数据库第一方法编写的系统的方法,并且需要维护版本化SQL脚本的历史记录。
若要使用此方法,请安装SSDT并创建一个新的数据库项目。然后创建一个架构比较,将您的开发数据库与数据库项目进行比较。运行比较并将更新写入项目(对于将来的更新,可以使用此工具比较生产和开发数据库之间的架构)。
然后,您可以使用发布功能直接将项目发布到生产数据库,或者生成脚本,然后手动验证和运行。
在直接发布到生产数据库时要格外小心,因为我会担心数据丢失或意外更新。除了初始模式创建(甚至不包括初始创建)之外,我建议您始终生成一个脚本,以便在针对生产数据库运行之前能够在舞台环境中验证输出和测试。
我意识到,您正在与开发数据库模式进行比较,并维护一个与POCOs不同的模型,这可能不是您的目的,但一旦您开始管理版本和版本控制,您就可以使用一组版本化的SQL脚本,您可以将这些脚本检查到源代码管理中并参考这些脚本,这是非常宝贵的。
https://stackoverflow.com/questions/13549048
复制相似问题