.net - 仅在发布 ASP.NET 5 Web 应用程序时执行 Gulp 任务

标签 .net gulp publish asp.net-core dnu

仅在发布 ASP.NET 5 Web 应用程序时执行 Gulp 任务的最佳方式是什么?我需要 add a custom build event执行 Gulp 命令?

cmd.exe /c gulp -b "C:\Projects\ProjectName\Source\ProjectName.Web" --gulpfile "C:\Projects\ProjectName\Source\ProjectName.Web\Gulpfile.js" publish

或者,最好有没有办法通过任务运行程序资源管理器将 Gulp 任务绑定(bind)到 BeforePublish 目标?

如有任何建议,我们将不胜感激。

最佳答案

在发布配置文件中创建目标(*.pubxml 文件仍然存在于 asp.net 5 项目中)。 pubxml 文件是一个构建文件,它被添加到您的 proj 构建文件中。这样,它只会在您使用该特定配置文件发布时运行。
我会使用 BeforeBuild 目标更通用(所有包恢复, View 中所有 js/css 的注入(inject)等,我会在构建开始之前执行这些操作)并在其中添加 gulp 命令:

<Target Name="BeforeBuild">
   <Exec Command="call gulp" WorkingDirectory="$(ProjectDir)" />
</Target>

无论您是从 Visual Studio 发布还是从构建计算机使用 MSBuild 发布,这都适用。

关于.net - 仅在发布 ASP.NET 5 Web 应用程序时执行 Gulp 任务,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31883573/

相关文章:

c# - 将代码与空格对齐时阻止 IDE0055 样式分析器

compass-sass - gulp-compass : You must compile individual stylesheets from the project directory 错误

javascript - React.js app.js 文件大小

iis - 无需安装 Microsoft Report Viewer 即可发布网站

android - 由于网络政策存在问题,我的应用被 Google Play 拒绝了?

asp.net - 从 Visual Studio 2015 发布

.net - 如何调试 "Safe handle has been closed"错误

c# - 在我在同一进程中创建的所有其他线程死亡后停止线程

c# - 按列分组的 LINQ 方法语法,从每组中选取一个元素以及每组的总计数

javascript - 使用 Browserify 需要 Controller 、工厂、服务和指令文件