Visual Studio通过WebDeploy发布Web应用程序后运行SQL脚本

时间:2015-01-31 11:27:47

标签: web-applications deployment visual-studio-2013 webdeploy

我使用Visual Studio 2013发布MVC Web应用程序。我通常首先在数据库中工作"某种方式。

作为我开发过程的一部分,我创建了几个(幂等)脚本,使数据库处于已知状态 - 这主要是创建存储过程,授予权限,检查列存在并插入引用数据。它不是"创建数据库"类型操作。

当我发布要测试的Web应用程序时,我必须跳到服务器上运行这些脚本。

有没有办法自动将这些脚本作为发布后任务运行。

我可以看到点击"我的项目"给了我一个选项"打包/发布SQL"但我似乎找不到一种方法来添加我的脚本,而不会做一个简单的"自动脚本架构"操作

当我发布时,它会查看连接字符串,并告诉我数据库更新不是此提供程序的选项。

如果有人有任何建议,我会很感激。或者,当然,如果我咆哮错误的树,请告诉我。

1 个答案:

答案 0 :(得分:0)

好吧,在没有任何更有用的地方,我已经开始使用以下内容:

在App_Data中,我有一个包含一组脚本的文件夹。

  • 一个脚本添加了列和缺少的表
  • 创建所有存储过程并授予权限
  • 一个人在必要时添加数据。

脚本与应用程序的其余部分一起发布,并且被设计为幂等的 - 它们可以根据需要运行多次,并在之后将数据库保持在相同的状态。

这不是一个理想的解决方案,因为我必须远程桌面到服务器并运行脚本,但事实证明它相当可靠和快速。