Solved

Simple ASP.NET Data Question (I hope!)

Posted on 2009-04-14
2
183 Views
Last Modified: 2012-05-06
I am primarily a Forms programmer. I am now delving into web programming. I am working through some of the data-access examples at http://www.asp.net/learn/data-access. The sample code to follow will be modified slightly from the example at the site.

My question is what is happening with my code/page in the code below? Specifically, if the page load event finishes before the update product function is executed, why would my page refresh data? Is page load not the last function to run? I added the IsPostBack lines to see if I could make the data refresh with one click of the button. Is this good practice?

I may have more questions depending on the answer :)
using System;
using System.Data;
using System.Configuration;
using System.Collections;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Web.UI.HtmlControls;
using DAL_Tutorial.NorthwindTableAdapters;
 
public partial class AllProducts : System.Web.UI.Page
{
    ProductsBLL productLogic;
 
    protected void Page_Load(object sender, EventArgs e)
    {
        productLogic = new ProductsBLL();
 
        if (!IsPostBack)
        {
            GridView1.DataSource = productLogic.GetProductsByCategoryID(1);
            GridView1.DataBind();
        }
    }
 
    protected void UpdateProduct(object sender, EventArgs e)
    {
        try
        {
            productLogic.UpdateProduct(this.newName.Text, 1, 1, null, 14m, 10, null, null, false, 1);
 
            if (IsPostBack)
            {
                GridView1.DataSource = productLogic.GetProductsByCategoryID(1);
                GridView1.DataBind();
            }
        }
        catch (ArgumentException ae)
        {
            Response.Write("There was a problem: " + ae.Message);
        }
    }
}

Open in new window

0
Comment
Question by:käµfm³d   👽
[X]
Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people just like you are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions
2 Comments
 
LVL 14

Accepted Solution

by:
GiftsonDJohn earned 500 total points
ID: 24141204
Hi,

Please check the below link for Asp.Net Page life cycle.
http://msdn.microsoft.com/en-us/library/ms178472.aspx

In the current scenario Page_Load will be executed first. I believe the UpdateProduct is the handler for the Button Click Event. It will be executed next. That's why you are preventing the Grid not to be binded again in the postback first by having a validation if (!IsPostBack) or (!Page.IsPostBack)

The validation if (IsPostBack) in UpdateProduct function is not required because the control will come here only after the postback.
0
 
LVL 75

Author Closing Comment

by:käµfm³d 👽
ID: 31570062
Excellent. This is what I needed to know. Thanks again!
0

Featured Post

Independent Software Vendors: We Want Your Opinion

We value your feedback.

Take our survey and automatically be enter to win anyone of the following:
Yeti Cooler, Amazon eGift Card, and Movie eGift Card!

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Introduction This article shows how to use the open source plupload control to upload multiple images. The images are resized on the client side before uploading and the upload is done in chunks. Background I had to provide a way for user…
Problem Hi all,    While many today have fast Internet connection, there are many still who do not, or are connecting through devices with a slower connect, so light web pages and fast load times are still popular.    If your ASP.NET page …
The Email Laundry PDF encryption service allows companies to send confidential encrypted  emails to anybody. The PDF document can also contain attachments that are embedded in the encrypted PDF. The password is randomly generated by The Email Laundr…

751 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question