Hãy lấy một ví dụ thực sự đơn giản về việc sử dụng jQuery để ajaxify trang của chúng tôi ...Page_Load hoặc Page_Init
$.load("getOrders.aspx", {limit: 25}, function(data) {
// info as JSON is available in the data variable
});
và trong ASP.NET (HTML phần) trang (chỉ có một dòng)
<%@ Page Language="C#" AutoEventWireup="true"
CodeFile="getOrders.aspx.cs" Inherits="getOrders" %>
và trong ASP.NET (Mã Đằng sau) trang
public partial class getOrders : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
string lmt = Request["limit"];
List<Orders> ords = dll.GetOrders(limit);
WriteOutput(Newtonsoft.Json.JsonConvert.SerializeObject(ords));
}
private void WriteOutput(string s)
{
Response.Clear();
Response.Write(s);
Response.Flush();
Response.End();
}
}
câu hỏi của tôi là
nó nên được
protected void Page_Load(object sender, EventArgs e)
hoặc
protected void Page_Init(object sender, EventArgs e)
Vì vậy, chúng ta có thể tiết kiệm một số mili giây như chúng ta không thực sự cần để xử lý các sự kiện cho trang, hoặc sẽ Page_Init
thiếu một số phân loại của một phương pháp theo thời gian nó được gọi là?
P.S. Hiện nay hoạt động tốt trong cả hai phương pháp, nhưng tôi chỉ muốn hiểu các ins and outs của việc lựa chọn một phương pháp trong
Lưu ý rằng việc sử dụng Page_Init không giúp bạn tiết kiệm bất kỳ mili giây nào so với Page_Load - cả Init và Load là các sự kiện vòng trang chuẩn, vì vậy chi phí để gọi một trong hai sự kiện là giống nhau. –
Trên thực tế cho anh ta cắt nó ra sớm mà không phải là trường hợp, Init là trước đó trong chu kỳ và do đó giết chết nó có tiết kiệm các bước khác, nhưng vẫn còn nhiều hơn để đạt được chỉ đơn giản là đi đến một ashx. – fyjham
@Tim Schneider - Thực ra, bạn nói đúng, tôi đã bỏ lỡ cuộc gọi 'Response.End()'. Có, thực hiện càng sớm càng tốt sẽ cắt vài phần nghìn giây. Bạn cũng phải chuyển sang .ashx tốt hơn là thực hiện tối ưu hóa vi mô như vậy. –