我正在使用Visual Studio 2012并且正在使用JavaScript框架(Ext JS)。我的HomeController基本上重定向到Ext JS使用的索引。它与其他实际使用.NET的Visual Studio项目(通过CORS)进行通信,但这个特定的项目只包含我的JavaScript应用程序。
我想发布这个Visual Studio项目,但有一个问题。与Ext JS一起使用的工具,名为Sencha Command,用于创建JavaScript应用程序的生产版本。它基本上创建了一个独立的构建文件夹,其中包含所有JavaScript脚本的组合和缩小,所需的资源,编译Sass等。它在某些情况下运行得很好,但我不知道如何使它发挥作用在发布时使用Visual Studio很好。
我已经弄清楚如何使用post-build命令运行sencha命令,该命令检查我是否处于调试模式,但我不希望生成的文件夹成为我实际项目的一部分,我也不希望发布尚未编译的代码。我知道如何省略pubxbml文件中的文件夹。但我需要做一些事情,比如将build文件夹移动到发布位置。
有没有遇到过这样的场景?有没有更好的方法来解决这个问题?
这是我目前的pubxml:
<?xml version="1.0" encoding="utf-8"?>
<!--
This file is used by the publish/package process of your Web project. You can customize the behavior of this process
by editing this MSBuild file. In order to learn more about this please visit http://go.microsoft.com/fwlink/?LinkID=208121.
-->
<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<PropertyGroup>
<WebPublishMethod>FileSystem</WebPublishMethod>
<SiteUrlToLaunchAfterPublish />
<publishUrl>C:\Users\TestUser\Desktop\Release</publishUrl>
<DeleteExistingFiles>False</DeleteExistingFiles>
<ExcludeFoldersFromDeployment>
js/ext;js/App
</ExcludeFoldersFromDeployment>
</PropertyGroup>
<Target Name="BeforePublish" BeforeTargets="FileSystemPublish">
<Exec Command="echo Hello" />
</Target>
</Project>
注意:我不认为BeforePublish有效。我在那里尝试了许多命令,包括“sencha app build”命令,后来我将其转移到后构建命令。