467,877 Members | 1,297 Online
Bytes | Developer Community
New Post

Home Posts Topics Members FAQ

Post your question to a community of 467,877 developers. It's quick & easy.

Am I doing this the right way? ASP.NET/AJAX

I hope this is the right group for this question.

I recently started looking into AJAX and I am doing the following:

I have a repeater (dummydata) that is bound to a datatable (Articles).
Each ItemTemplate in the repeater has an Label control that is showing
ArticleName and an UpdatePanel. The UpdatePanel contains another
Repeater. I also have a button above the repeater. Each UpdatePanel
has an AsyncPostBackTrigger setup to my Button with EventName Click.

What I want to happen is the following: The button is clicked and all
the UpdatePanels call a webservice passing the ArticleName with the
infromation from the Label. The webservice then returns a datatable
that is bound to the repeater within each UpdatePanel.

ASPX Code below:
My Button Code is listed below:

protected void UpdateAllButton_Click(object source, EventArgs e)
Button button = source as Button;
Repeater dummyData =

foreach (RepeaterItem i in dummyData.Items)
Repeater repeater1 = (Repeater)i.FindControl("Repeater1");
Label articleLabel = (Label)i.FindControl("ArticleLabel");

ArticleFinderWebService t = new ArticleFinderWebService();
repeater1.DataSource = t.FindArticle(articleLabel.Text);
<asp:ScriptManager ID="ScriptManager1" runat="server">
Path="TrackFinderWebService.asmx" />
<br />
<asp:Button ID="UpdateAllButton" runat="server" Text="Button"
OnClick="UpdateAllButton_Click" /><br />
<asp:Repeater ID="DummyData" runat="server">
<td width="300"><asp:Label ID="ArticleLabel"
runat="server" Text='<%# Bind("Article") %>'></asp:Label></td>
<asp:UpdatePanel ID="InnerUpdatePanel" runat="server"
<asp:Repeater ID="Repeater1" runat="server">
<td width="20">
ID="ArticleCheckBox" runat="server" Checked='<%# Bind("Checked") %>' /
<td width="250">
<asp:Label ID="lblArticle"
runat="server" Text='<%# Bind("Article") %>'></asp:Label><br />
ControlID="UpdateAllButton" EventName="Click" />
<hr />
Now this code works fine but I have a few questions:

1. Is this the right way to do it? I guess I get confused when I use
ServerSide events to execute AJAX calls.
2. Let's assume I want a few webservices to be called (each webservice
grabs information about the article but from different sources on the
internet. Would it be better to use one webservice to go out and
collect data from different locations, put it in a datatable then
return it to the repeater in the updatepanel OR add another webservice
method and add another updatepanel in the ItemTemplate then have each
UpdatePanel call a different webmethod? I was thinking the latter
approach since everything will happen at the same time, and if one
webservice finishes before the other, that data will be displayed on
the page right away instead of having to wait and gather all the data
then present it.

Any feedback would be greatly appreciated.


Aug 10 '07 #1
  • viewed: 1591

This discussion thread is closed

Replies have been disabled for this discussion.

Similar topics

11 posts views Thread by Yarco | last post: by
7 posts views Thread by Thirsty Traveler | last post: by
reply views Thread by melledge | last post: by
4 posts views Thread by Steve Y. | last post: by
reply views Thread by Free Ebooks | last post: by
11 posts views Thread by =?Utf-8?B?R2VyaGFyZA==?= | last post: by
reply views Thread by jack112 | last post: by
reply views Thread by MrMoon | last post: by
By using this site, you agree to our Privacy Policy and Terms of Use.