DictionaryのValue値からキーを取得するサンプルです。
サンプル
例)Value値からKeyを取得する
using System.Collections.Generic;
using System.Linq;
//Dictionaryの生成
Dictionary<string, string> dc = new Dictionary<string, string>();
//要素の追加
dc.Add("01", "大阪");
dc.Add("02", "京都");
dc.Add("03", "神戸");
//値="京都"のキーを取得する
var k1 = dc.FirstOrDefault(x => x.Value.Equals("京都")).Key;
//値="奈良"のキーを取得する
var k2 = dc.FirstOrDefault(x => x.Value.Equals("奈良")).Key;
結果
k1 → "02"
k2 → null
同じValue値が存在する場合は一番最初にヒットした要素のKeyが返ります。
備考
- Dictionaryの値からキーを取得するには、上記サンプルのようにLINQを使うと簡単です。
- キーがint等の基本データ型の場合で、要素が存在しない場合は0が返ります。