是否有可能使nant在Web应用程序项目上运行发布

Nes*_*zer 8 ftp nant publish nant-task visual-studio

有没有可能让nant在mvc项目或一个好的旧的Web应用程序项目上运行发布,
并在发布后将文件发送到Web服务器

更新:找到解决ftp问题的
Nant ftp任务谢谢Paco

我的意思是publich
是否有一个命令行应用程序或nant任务,可以公开像visual studio发布...

Pac*_*aco 8

visual studio publish命令可重建您的解决方案,然后将解决方案目录中的文件复制到新目录.我使用以下目标来做几乎相同的事情:

<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>
Run Code Online (Sandbox Code Playgroud)

在此目标之前,您必须运行正常的构建过程.