-1

私はC#の初心者です。configという名前の1つの文字列フィールドを持つという名前のクラスがありkyeます。

GETクラスのプロパティを適用すると、プロパティはkye異なるタイプ(IntまたはboolまたはString)の1つの変数を返す必要があります。

enumオペレーターの助けを借りてこれを実装する必要があります。どうすればこれを行うことができますか?

4

2 に答える 2

1

私の知る限り、言語に組み込まれているようなものはないので、手動で行う必要があります。1つの簡単な方法は次のとおりです。

public object GetKye(KyeType type)
{
    switch (type)
    {
        case KyeType.String:
            return this.kye;
        case KyeType.Int32:
            return Int32.Parse(this.kye);
        case KyeType.Bool:
            return this.kye.ToLower().Equals("true");
    }
    return null;
}
于 2012-07-15T08:17:07.693 に答える
1

これにより、コード内でキャストする必要がなくなりますが、安全ではありません。その周りには多くのエラー処理が必要です。

public T Kye<T>(KyeEnum Key)
{
    return (T)kye;
}

または、これはあなたが求めているものですか:

public Tuple<int, bool, string> Kye(KyeEnum Key)
{
    return new Tuple<int, bool, string>(nKye, bKye, sKye);
}
于 2012-07-15T08:22:02.910 に答える