私はC#と辞書を使用することで非常に新しいです。 KeyがタイプGroupのオブジェクトである辞書のKeyを編集したいと思います。グループには1つのパブリックプロパティGroupNameが含まれます。 GroupNameを新しい文字列値に変更する必要があります。私たちはキーとして文字列ではなくオブジェクトを使用する必要があります。私は以下を試した:辞書のオブジェクト型のキーを更新する
***************************SEPERATE COLLECTION CLASS************************
{
public class GroupKeysDictionary : Dictionary<Group, List<Key>> { }
}
*************************************************************************
private static GroupKeysDictionary _groupKeys = new GroupKeysDictionary();
public static class DataAccessMgr {
(Group g contains the original g.
GroupName and k.GroupName is the new group name)
public static void EditGroup(Group g, Group k) {
if (_groupKeys.ContainsKey(g)) {
_groupKeys(g) = k
}
}
私はグループを削除して再追加する必要がありますか? 私はリストの値を失いたくありません。
これは拡張メソッドに属しているようです。 –
ヘルプとコードサンプルをありがとう。私はそれを試してみましょう。 –
@ M.Babcock、確かに、回答を提供するのは難しいです(もし誰かが好きなだけで拡張メソッドに入れることはできますが、おそらく 'public static bool ReplaceKey(このDictionary 辞書、TKey originalKey、TKey newKey) 'メソッドがキーをスワップすることができる場合はtrue/falseを返します)、現在は拡張メソッドをすべて自由に宣言する気にはなりません。 –