3

C#3.0の自動プロパティが優れていることに私たちは皆同意できると思います。このようなもの:

private string name;
public string Name
{
    get { return name; }
    set { name = value; }
}

これに還元されます:

public string Name { get; set; }

素晴らしい!

しかし、たとえば、「設定」中にToUpperInvariant()メソッドを使用してName文字列を変換したい場合は、どうすればよいでしょうか。プロパティを作成する古いC#2.0スタイルに戻す必要がありますか?

    private string name;
    public string Name
    {
        get { return name; }
        set { name = value.ToUpperInvariant(); }
    }

それとも、これを達成するためのよりエレガントな方法はありますか?

4

1 に答える 1

5

はい、元に戻す必要があります。自動プロパティは、この種のチェックを実行できません。

于 2010-07-20T14:52:59.177 に答える