var versionNo = new System.Version("2.01");
我得到的值是
versionNo
= 2.1
,但我希望它是2.01
。有什么建议吗?var versionNo = new System.Version("2.01");
versionNo
= 2.1
,但我希望它是2.01
。有什么建议吗?这就是 system.Version
的工作方式 - 它将版本的组成部分存储为单独的整数,因此在 2.01
和 2.1
之间没有区别。如果你需要以这种方式显示它,你可以按以下格式进行格式化:
Version versionNo = new Version("2.01");
string s = string.Format("{0}.{1:00}",versionNo.Major, versionNo.Minor);
为方便起见,您还可以创建一个扩展方法:
public static string MyFormat(this Version ver)
{
return string.Format("{0}.{1:00}",ver.Major, ver.Minor);
}
这样可以在保留Version
类的可比性的同时,仍然可以自定义display。
System.Version的每个组件都是一个整数,所以它不会填充0。你可以有一个主版本号、次版本号和构建版本号:
Version versionNo = new Version("2.0.1");
Version = 2.0.1
但通常情况下,01和1是等价的。如果您想要特别填充版本0的任何组件,我建议您创建一个扩展方法(由D Stanley提到),或使用不同的类型。
2.01
,那么您的MinorVersion
就是01
。MinorVersion
进行填充,方法如下:string version = version.Major.ToString() + version.Minor.ToString("D2");
versionNo
转换为字符串"2.1"
的代码。 - stakx - no longer contributing