我正在对我的服务器端c#进行jquery ajax调用。 c#代码填充数据表,然后使用JavaScriptSerializer
将数据发送到aspx页面:
数据表初始化为public:
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调用的数据表是否仍在内存中? 谢谢。
答案 0 :(得分:1)
不,dataTable将不再处于memoty状态。每次创建请求时,都会创建一个新的_Default
实例。处理完请求后,它将被销毁。
如果您希望DataTable保留在内存中,则应将其保存在Cache或Application对象(HttpContext.Current.Cache
/ HttpContext.Current.Application
)中。