0

(Routevalues は、私がボックス化解除しているオブジェクトです)

var dict = ((RouteValueDictionary)this.RouteValues);

if (dict[key] == null) { dict.Add(key, value); }

同じキーを 2 回続けて追加すると、「同じキーを持つアイテムが追加されました」という例外がスローされます。

4

1 に答える 1

0

私はこの問題を自分で修正しました。

どうやら dict[key] == null は、辞書にキーが存在するかどうかを確認するための有効なチェックではありません!

あるべき、

if (!dict.ContainsKey(key))
{
                    dict.Add(key, value);
}

これは、「key」の元の VALUE が空の文字列値であった場合に発生すると思います。これが誰かに役立つことを願っています;-)

于 2013-07-03T19:51:30.470 に答える