是否可以让 nant 在 mvc 项目或一个好的旧 Web 应用程序项目上运行发布,
并在发布后让 nant FTP 文件到 Web 服务器
更新:找到 ftp 问题的解决方案
Nant ftp 任务感谢 Paco
我所说的 publich
是指有一个命令行应用程序或 nant 任务可以像 Visual Studio 一样公开发布...
是否可以让 nant 在 mvc 项目或一个好的旧 Web 应用程序项目上运行发布,
并在发布后让 nant FTP 文件到 Web 服务器
更新:找到 ftp 问题的解决方案
Nant ftp 任务感谢 Paco
我所说的 publich
是指有一个命令行应用程序或 nant 任务可以像 Visual Studio 一样公开发布...
Visual Studio 发布命令重建您的解决方案,然后将解决方案目录中的文件复制到新目录。我使用以下目标来做几乎相同的事情:
<target name="copyToPublish">
<delete dir="${dir.publish}" />
<mkdir dir="${dir.publish}" />
<mkdir dir="${dir.publish}\wwwroot"/>
<copy todir="${dir.publish}\wwwroot" includeemptydirs="false">
<fileset basedir="${website.dir}">
<exclude name="**/*.cs"/>
<exclude name="**/*.pdb"/>
<exclude name="**/*.csproj*"/>
<exclude name="**/obj/**"/>
<include name="**/*.*"/>
</fileset>
</copy>
<mkdir dir="${dir.publish}\database"/>
<copy todir="${dir.publish}\database" includeemptydirs="false">
<fileset basedir="${dir.databasescripts}">
<include name="**/*.sql" />
</fileset>
</copy>
<xmlpoke
file="${dir.publish}\wwwroot\Web.config"
xpath="/configuration/system.web/compilation/@debug"
value="false" />
<xmlpoke
file="${dir.publish}\wwwroot\Web.config"
xpath="/configuration/system.web/trace/@enabled"
value="false" />
<move file="${dir.publish}\wwwroot\Web.config" tofile="${dir.publish}\wwwroot\Release.config" overwrite="true" />
<delete file="${dir.publish}\wwwroot\Web.config" />
</target>
在此目标之前,您当然必须运行正常的构建过程。
nant有一个Ftp 任务。除此之外,您必须创建一个脚本来复制您需要的文件和目录以及配置文件。我不会自动执行此操作,因为我想控制数据库更新脚本和 web.config 中的更改。