我知道Visual Studio生成的版本字符串基于运行构建的日期/时间。鉴于Visual Studio生成的部分版本字符串“3856.24352”,如何将其转换为发生该版本的日历日?
答案 0 :(得分:12)
完整版字符串的格式为 major.minor.build.revision 。 构建部分是自1 st 2000年1月以来的天数。修订版部分是自午夜以来的秒数除以2(有关详细信息,请参阅here。
假设您的版本字符串是自动递增类型,并且您已经使用了 build.revision 部分,则可以使用以下命令将其重新设置为日期:
string buildRevision = "3856.24352";
string[] parts = buildRevision.Split('.');
int build = int.Parse(parts[0]);
int revision = int.Parse(parts[1]);
DateTime dateTimeOfBuild = new DateTime(2000, 1, 1)
+ new TimeSpan(build, 0, 0, 0)
+ TimeSpan.FromSeconds(revision * 2);
这将为您提供一个DateTime
来表示构建何时生成(例如,对于您的示例是23 rd 2010年7月13:31:44)。
答案 1 :(得分:1)
这是一个用于将 .Net 版本转换为日期的简单 javascript 工具:
function convertBuildNumberToDate()
{
var buildString = document.getElementById("input").value.split(".");
var buildNumber = Number(buildString[2]);
var revision = Number(buildString[3]);
var date = new Date(2000, 1, 1);
date.setDate(buildNumber);
date.setSeconds(revision * 2);
var output = date.toLocaleString();
document.getElementById("output").innerHTML = output;
}
Build Number:
<br />
<input id="input" value="1.0.7769.27451" />
<button onclick="convertBuildNumberToDate()">Convert</button>
<br />
<br />
Build Date:
<br />
<div id="output"></div>