如何自动增加MVC 6版本号?

时间:2015-11-18 03:50:28

标签: asp.net-core asp.net-core-mvc

以前版本的ASP.NET允许您通过“项目属性”自动增加版本号。我怎么能在MVC 6中做到这一点?

3 个答案:

答案 0 :(得分:12)

MVC 6现在使用project.json来跟踪版本,您可以使用gulp-bump来修改此数字。

Version Bumping

  1. 添加gulp-bump到package.json> devDependencies

    gulp-bump": "1.0.0"

  2. 编辑gulpfile.js

    • bump = require("gulp-bump")添加到顶部的
    • 依赖项中
    • 添加任务以突破版本号

      gulp.task("bump", function() {
        gulp.src("./project.json")
        .pipe(bump())
        .pipe(gulp.dest("./"));
      });
      
  3. 更新project.json

    • 默认情况下,MVC模板会将版本号设置为1.0.0-*,将其更改为1.0.0
    • "gulp bump"添加到"scripts">的底部"prepublish"
  4. 现在无论何时发布,或dnu publish或运行gulp任务运行器,版本号都会崩溃。

    加成

    要在View中显示此版本号,请在视图中添加以下内容;

    @inject Microsoft.Extensions.PlatformAbstractions.IApplicationEnvironment appEnv
    My version number is @(appEnv.ApplicationVersion)
    

答案 1 :(得分:4)

ASP.NET 5(DNX)答案

这就是ASP.NET 5团队实际使用的内容。如果您使用的是持续集成构建服务器,则可以使用PowerShell让构建服务器像这样设置DNX_BUILD_VERSION环境变量:

$env:DNX_BUILD_VERSION=$version

您的构建机器然后将$ version设置为'build123'或类似的东西(它不能以数字开头,必须是字母表中的字符)然后,只要您的版本号设置如下:< / p>

{
    "version": "1.0.0-*"
}

星号将替换为DNX_BUILD_VERSION环境变量中的值。有关详细信息,请参阅ASP.NET 5 GitHub页面here

答案 2 :(得分:1)

对于.NET Core(RTM)项目,您可以使用dotnet-bump。您可以将其作为工具添加到项目中,并从后编译脚本中调用它。 http://github.com/BalassaMarton/dotnet-bump