私のmvc3プロジェクトでは、DictionaryをTempdataDictionaryに保持しています。
TempData[ViewDataKeys.ItemsAdd] = new Dictionary<int, int>();
Ajaxリクエストの場合、アイテムをに追加しますTempData[ViewDataKeys.ItemsAdd]
。更新されますが、アイテムを削除しTempData[ViewDataKeys.ItemsAdd]
ても更新されません。
から1つのアイテムを削除するTempData[ViewDataKeys.ItemsAdd]
と、nullになります。
private void RemoveFrom(int Uid)
{
if (TempData[ViewDataKeys.ItemsAdd] == null)
{
TempData[ViewDataKeys.ItemsAdd] = new Dictionary<int, int>();
}
var a= (Dictionary<int,int>)TempData[ViewDataKeys.ItemsAdd];
a.Remove(Uid);
TempData[ViewDataKeys.ItemsAdd] = a;
}
private void AddTo(int Uid)
{
if (TempData[ViewDataKeys.ItemsAdd] == null)
{
TempData[ViewDataKeys.ItemsAdd] = new Dictionary<int,int>();
}
var a= (Dictionary<int,int>)TempData[ViewDataKeys.ItemsAdd];
a.Add(Uid, Uid);
TempData[ViewDataKeys.ItemsAdd] = a;
}