Risparmiare risorse con ASP.NET AJAX

di Stefano Mostarda, in ASP.NET 2.0, ATLAS, AJAX,

Con ASP.NET AJAX è stato introdotto il concetto di PartialRendering, ovvero l'aggiornamento di una sola sezione della pagina lasciando invariate le altre.

Grazie a questo meccanismo, si possono risparmiare risorse non solo di banda, ma anche di CPU lato server, in quanto si possono processare le sole informazioni relative all'UpdatePanel coinvolto.

Sfruttando la proprietà IsInAsyncPostBack dello ScriptManager possiamo sapere se ci troviamo in un PostBack asincrono e quindi decidere di aggiornare o meno una determinata sezione della pagina che nel caso in esame è la combo al di fuori dell'UpdatePanel

<script runat="server">
  void Page_Load(object sender, EventArgs e)
  {
    if (!sm.IsInAsyncPostBack)
    {
      System.IO.DirectoryInfo d = new System.IO.DirectoryInfo("c:\\");
      ddl1.DataSource = d.GetFiles();
      ddl1.DataBind();
      ddl1.SelectedValue = Request.Form[ddl1.UniqueID];
    }
  }

  void click(object sender, EventArgs e)
  {
    lit.Text = DateTime.Now.ToString();
  }
</script>
<form id="form1" runat="server">
  <div>
    <asp:ScriptManager ID="sm" runat="Server" />
    <asp:DropDownList runat="server" ID="ddl1" DataTextField="Name"></asp:DropDownList>
    <asp:button id="Button1" runat="server" />
    <asp:updatepanel id="upd" runat="server">
      <ContentTemplate>
        <asp:button id="btn" runat="server" OnClick="click" />
        <asp:Literal id="lit" runat="server" />
      </ContentTemplate>
    </asp:updatepanel>
  </div>
</form>

Per approfondimenti su ASP.NET AJAX si veda:
http://ajax.aspitalia.com/

Commenti

Visualizza/aggiungi commenti

| Condividi su: Twitter, Facebook, LinkedIn

Per inserire un commento, devi avere un account.

Fai il login e torna a questa pagina, oppure registrati alla nostra community.

Approfondimenti

I più letti di oggi