在Gulp或Grunt中获取项目平台和配置

时间:2016-02-09 12:51:27

标签: asp.net .net gruntjs gulp

我想知道我是否可以在ASP.NETgulpfile.js中获得gruntfile.js项目配置和平台?我是说,例如Debug|AnyCPU值。

1 个答案:

答案 0 :(得分:1)

是的,你可以,但出于显而易见的原因你只能从知道这些细节的工具调用gulp,例如MSBUILD。

假设您刚刚使用Visual Studio 2015为.NET 4.5.2创建了一个全新的空ASP.NET Web应用程序,您可以将这样的内容添加到BuildAfterBuild Target

<exec command='gulp --env="$(Configuration)|$(Platform)"' />

然后您需要parse arguments in gulp,例如使用yargs

require('gulp').task("default", function() {
  console.log(require('yargs').argv.env);
});

如果你在Visual Studio中构建,这将写出类似的内容:

  1>------ Rebuild All started: Project: GulpFromMsbuild, Configuration: Release Any CPU ------
  1>  GulpFromMsbuild -> D:\GulpFromMsbuild\bin\GulpFromMsbuild.dll
  1>  [20:07:41] Using gulpfile D:\GulpFromMsbuild\gulpfile.js
  1>  [20:07:41] Starting 'default'...
  1>  Release|AnyCPU
  1>  [20:07:41] Finished 'default' after 36 ms
  ========== Rebuild All: 1 succeeded, 0 failed, 0 skipped ==========

所以基本上有两个成分:

  1. 从您的调用工具(msbuild,teamcity,powershell,等等)传递模式;
  2. 在gulp(yargs等)中解析参数;
  3. 我假设Grunt有类似的参数解析工具...