0

msdn (ページ下部のコメント)からのようですが、HttpCookie の Expires プロパティを設定すると、一時インターネット ファイル フォルダーに保存される永続的な Cookie になります。セッション Cookie のままにしたい (つまり、ブラウザーを閉じると消えてしまう) が、有効期限を 30 分に設定したい場合はどうすればよいですか? ASP.NET メンバーシップ API を使用すると、web.config でセッション cookie (認証 cookie) の有効期限を設定できるため、セッション cookie の有効期限を設定する方法が必要になります。

4

3 に答える 3

2

あなたの要件を考慮して、クッキーを使用する非常に強い理由がない限り、Sessionオブジェクトを使用する必要があると思います。

この Cookie に「大量の」情報を保存していない場合、および / またはユーザー数がそれほど多くないと予想される場合、これが最適なオプションと思われます。

于 2012-06-15T02:50:21.803 に答える
1

おそらく、最初の Cookie の有効期間をアプリケーションに伝える DateTime を含む別の Cookie (セッション Cookie) を追加することもできます。次に、アプリケーションが最初の Cookie を読み取るたびに、新しい Cookie もチェックして、それがまだ有効かどうかを確認します。

これは多かれ少なかれメンバーシップのやり方だと思います。その場合、Cookie は 1 つだけですが、その Cookie には複数のフィールド (情報) が含まれています。

于 2012-06-15T05:38:24.230 に答える
1

次のようなことを試しましたか:

this.Response.Cookies["d"].Expires = DateTime.Now.AddMinutes(30);
于 2012-06-15T02:06:33.840 に答える