title | author | date | CreateTime | categories |
---|---|---|---|---|
C# 使用转换语义版本号 |
lindexi |
2018-12-25 09:25:41 +0800 |
2018-06-29 12:14:19 +0800 |
C# |
本文告诉大家如何转换语义版本号,那么什么是语义版本号,语义版本号(semantic version)就是版本号带 alpha 等的版本号
在以前的版本号都是这样 1.2.1
的格式,这个格式可以使用微软的 Version 类转换
var str = "1.2.1";
var version = Version.Parse(str);
如果需要使用语义版本号如1.2.1-alpha
的格式,或看起来就很难解析的1.2.45-alpha-beta+nightly.23.43-bla
就不能使用微软提供的 version 转换
不要看语义版本号很复杂,实际上也是有规则的,请看语义版本号(Semantic Versioning) - walterlv, 官方文档
可以安装 semantic version library for .Net 转换,安装方法是使用 Nuget 搜索 semver 或输入 Install-Package semver
安装
安装完成,如转换 1.2.45-alpha-beta+nightly.23.43-bla
,可以使用这个代码
using Semver;
// 忽略代码
var str = "1.2.45-alpha-beta+nightly.23.43-bla";
var version = SemVersion.Parse(str);
如果不想安装库,可以复制代码https://gist.github.com/yadyn/959467 ,如果觉得这个库不靠谱,可以复制 git tools 项目的代码