-1

サンプルを作成し、ホストでテストします(共有されています)。私のWeb構成にmachineKeyを配置します。私はデータを格納するツリータイプを作成します:

 protected void Page_Load(object sender, EventArgs e)
    {
        if (!Page.IsPostBack)
        {   
            Session["x"] = "A";
            HttpContext.Current.Application.Add("y", "B");
            Application["z"] = "C";
        }
    }

フォームにボタンを配置し、そのイベントに書き込みます:

     protected void Button1_Click(object sender, EventArgs e)
       {
          try
          {
             Label1.Text = Session["x"].ToString();
         }
         catch (Exception err)
         {
             Label1.Text = err.Message;
         }

        try
        {
              Label2.Text = HttpContext.Current.Application["y"].ToString();
        }
        catch (Exception err)
        {
            Label2.Text = err.Message;

        }

        try
        {
            Label3.Text =  Application["z"].ToString();
        }
        catch (Exception err)
        {
            Label3.Text = err.Message;
        }


    }

iis がいつでもキャッシュ/メモリの内容をリサイクルして破棄すると、すべての type.all のすべてのデータが失われます。オブジェクトのインスタンスに設定されていないオブジェクト参照が返されます。

ユーザーが来てログインしたいのですが、iisがデータをリサイクルしてユーザーがログに記録されていることに気付くまで、正しいユーザーのIDまたはユーザー名をどこに保存できますか? Cookie は、ユーザーのユーザー名やパスワードなどのデータを保存するのに適していますか?

4

2 に答える 2

0

サーバーにファイルを保存できる場合は、メンバーシップシステムのファイルベースのプロバイダーを試すことができます

http://madskristensen.net/post/XML-membership-provider-for-ASPNET-20.aspx

于 2012-09-17T21:45:53.590 に答える
0

SQL Server など、より永続的な場所を使用してその情報を保存することを検討する必要があります。この Microsoft の記事では、SQL Server を使用してセッション状態を保存するようにサイトを構成する方法について説明しています。

これを行う方法を説明するブログ記事は他にもたくさんあるので、頭を悩ませることはありません :)

編集: OK、利用可能なセッション状態モードStateServerを見ると、Web ファーム環境で実行されている ASP.NET サイトをサポートしているため、モードを確認する必要があるようです。

参考までに、この記事では、Web ファームで SQL Server セッション状態を使用する方法について説明します。

于 2012-09-17T21:31:03.177 に答える