0

サーバー側の c# に対して jquery ajax 呼び出しを行っています。C# コードは、データ テーブルにデータを入力し、次を使用してデータを aspx ページに送信します。データJavaScriptSerializerテーブルはパブリックとして初期化されます。

public partial class _Default : System.Web.UI.Page
   {
      DataTable myDataTable = new DataTable();

      protected void Page_Load(object sender, EventArgs e)
         {
            if (!Page.IsPostBack)
            {
               //SqlDataReader builds loads data into dataTable...
               HttpContext.Current.Response.Write(serializer(dataTable));
            }

aspx ページは、データを aspx ページに戻すことによって、最終的にデータからテーブルを作成します。私の次のタスクは、テーブルの見出しがクリックされたときに行を昇順/降順で並べ替えることです (別の ajax 呼び出しを使用)。

この質問で受け入れられた回答と同様の並べ替え操作を実行したいと思います: Sorting rows in a data table

最初のajax呼び出しからのデータテーブルはまだメモリにありますか? ありがとうございました。

4

1 に答える 1

1

いいえ、dataTable はもう記憶されません。リクエストを作成するたびに、 の新しいインスタンス_Defaultが作成されます。リクエストが処理されると、リクエストは破棄されます。

DataTable をメモリに残しておきたい場合は、それを Cache または Application オブジェクト ( HttpContext.Current.Cache/ HttpContext.Current.Application) に保存する必要があります。

于 2013-08-19T06:50:29.913 に答える