如何在Visual Studio 2008中自动发布构建网站?
我希望每次构建web asp.net mvc 2项目时都能自动发布到本地文件夹。
我使用Visual Studio 2008。
自动化Visual Studio的“发布”操作中包含的function的最简单方法是使用Web部署项目 。 VS2005也有一款。 基本上,这是一个额外的项目,您将添加到您的解决方案中,该项目将针对您的Web项目,并且在构建时将作为构建过程的一部分发布您的Web项目。 它使得自动构建一个站点作为构建的一部分而不会与MSBuild混淆(虽然MSBuild并不那么困难)。
那么你可以在一个post-build事件中用MSBuild做到这一点。
但你确定要这么做吗? 它会让你慢下来,你可能不需要为每个版本发布? 为什么不在IIS而不是Cassini中运行该站点。
步骤1.确保您有一个Web项目。
步骤2.转到视图 – >工具栏 – > Web一键发布。
工具栏上的发布按钮Web按钮将按您的要求执行…一步构建和发布。
以下是我在网站项目中的使用方法。 请注意,这将复制到一个文件夹; 如果要通过FTB,WebDav或SSH公开,则需要使用Exec
任务而不是Copy
任务,并指定可以通过所需协议部署文件的命令行工具。
此外,您无法从VS IDE中的项目设置编辑AfterBuild
任务。 您需要在记事本或您喜欢的文本/ XML编辑器中打开它。 (你甚至可以使用VS,如果你关闭解决方案并强制它使用XML编辑器打开文件:-))
还有一个构建目标,它调用我目前已关闭的AspNetCompiler
,但您可以通过MvcBuildViews
属性值轻松打开。
false ..\..\drop\
选项1:从Cruise Control切换到JetBrains TeamCity(你不会后悔的!)。 在TeamCity中有一个Artifacts选项……
“工件是由构建生成的文件。完成构建后,TeamCity根据指定的工件模式在构建的checkout目录中搜索工件。然后将匹配的文件上载到服务器,在那里它们可供下载。”
选项2:在Cruise Control中创建一个任务,在构建完成后执行XCOPY。
... here's your main build ... ... define your XCOPY or other executable task here ... 900
选项3:在您的解决方案中创建一个后期构建项目,并在其中有一个任务来复制文件,在该任务上添加一个仅在巡航控制上运行时触发的条件(各种环境变量启用此function)。
- 无法将类型’System.Data.EntityState’隐式转换为’System.Data.Entity.EntityState’。 存在显式转换(您是否错过了演员?)
- 如何在使用boundfield时更新GridView
- MVC 2 – 将枚举传递给CheckBoxFor
- 使用特定名称而不是发件人电子邮件在asp.net中发送电子邮件
- 三元最佳实践
- 在服务器端validationrecaptcha
- 将图像转换为数据:image / png; base64用于网页disaplay
- 发送普通/文本电子邮件并在服务器的电子邮件响应中获取= 0D = 0A
- 使用AdoNetAppender刷新Log4Net缓冲区