7
var versionNo = new System.Version("2.01");

versionNo=2.1を取得していますが、として欲しいです2.01

何か提案はありますか?

4

3 に答える 3

13

それがどのように機能するかsystem.Versionです-バージョンのコンポーネントを個別の整数として保存するため、 と の間に区別はありませ2.012.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

于 2013-03-29T16:19:44.147 に答える
7

System.Version の各コンポーネントは int であるため、0 をパディングしません。メジャー、マイナー、およびビルドを持つことができます。

Version versionNo = new Version("2.0.1");

その結果、

Version = 2.0.1

ただし、一般に、01 と 1 は同等です。特にバージョン 0 の任意のコンポーネントをパディングしたい場合は、バージョンの ToString メソッドをオーバーライドするか、拡張メソッドを作成するか (D Stanley が述べているように)、別の型を使用することをお勧めします。

于 2013-03-29T16:18:50.633 に答える
1

お使いのバージョンが である場合、それはあなたが2.01であることを意味します。MinorVersion01

それを出力するには、次のようにして、をパディングする必要がありますMinorVersion

string version = version.Major.ToString() + version.Minor.ToString("D2");
于 2013-03-29T16:19:55.207 に答える