質問: "d" %> [B.asp] <% For Each content In Session.Contents If InStr(content,"test_") > 0 Then Session.Contents.Remove(content) End If Next Response.Redirect "A.asp" %> 元のコードを貼り付けられなくて申し訳ないのですが、 A.aspからフォームのサブミットでB.aspに飛ばし、B.aspでリダイレクトした後に全セッションを取得してみると削除されているはずのtest_bやtest_cのセッションが消えていないことがあります。(必ずしも消えないわけではなく、複数回繰り返すとすべて消えます。消えないものも毎回同じではありません。) このようなことがあるのか不明なのですが、もし知っている方がいらっしゃったら対策などを教えていただけないでしょうか。
回答: 自己解決しました。 ForループでSession.Contentsを使っているのに、そこからRemoveしているのが 問題でした。 一度コレクション等に削除するキーをセットして、キーをループさせれば問題あり ませんでした。