1

次のコードがあります

    public const string boy = "B";

    public const string girl = "G";

    private gender(string description, string value)
    {
        Description = description;
        Value = value;
    }

    public static IEnumerable<gender> GetAll()
    {
        yield return new gender("Boy", boy);
        yield return new gender("Girl", girl);
    }

プログラムに文字列「Boy」を与え、結果として文字列「B」を取得する方法を見つけたいと考えています。これはどのように可能ですか?

4

3 に答える 3

1
var param = "Boy";
var someBoy = GetAll().Where(g => g.Description == param).Select(g => g.Value).Single();
于 2013-07-29T00:20:08.583 に答える
1

前の回答とほぼ同じですが、受け取った値が間違っていないかどうかを確認してください:)

var rez = GetAll().FirstOrDefault(g=>g.Description==string_received);
if(rez==null) throw new ArgumentException();
return rez.Value;
于 2013-07-29T00:22:31.613 に答える