Solved

no database linked Dataset seems to lose values

Posted on 2004-08-15
5
150 Views
Last Modified: 2010-04-07
Hi,

I have a strongly typed non-database connected local dataset called "priceStream1".  I am iterating through a grid which adds rows to the "Instrument" table within this dataset (see below).  

At the end of this loop, for debug reasons, I am displaying the table data in XML of the records added - in my instance this is two and all is fine so far.

However, when I then try to inspect the dataset from another procedure within the same page (in my example I am assigning this new messageBox function which should display the data again to a simple server side button) the record count of the dataset is zero and therefore the XML statement is empty (apart from the default stuff).

It looks like some sort of scope issue but the priceStream1 dataset should be visible throughout my class.

Any help would greatly be appreciated.

Thanks.

James.

      private void Button2_Click(object sender, System.EventArgs e)
      {
            for (int i = 0; i <= WebGrid1.RootTable.Rows.Count - 1; i++)
            {
                  PriceStream.InstrumentRow myRow = priceStream1.Instrument.NewInstrumentRow();
                  myRow.Code = WebGrid1.RootTable.Rows[i].Cells[1].Text;
                  myRow.Price = Convert.ToDouble(strPrice);
                  myRow.Col = 0;
                  myRow.Row = i;
                  myRow.RequestID = i;
                  priceStream1.Instrument.Rows.Add(myRow);
                        
            }
            MessageBox.Show(priceStream1.GetXml(), "",MessageBoxButtons.OK,
                  MessageBoxIcon.Information,MessageBoxDefaultButton.Button1,
                  MessageBoxOptions.DefaultDesktopOnly);
      }
0
Comment
Question by:JAMES
  • 3
  • 2
5 Comments
 
LVL 18

Expert Comment

by:DotNetLover_Baan
Comment Utility
Hi there,
is "WebGrid1" your DataSet. Well, I would say store it in a session and use it further.
http://msdn.microsoft.com/library/default.asp?url=/library/en-us/cpguide/html/cpconpassingservercontrolvaluesbetweenpages.asp

-Baan
0
 

Author Comment

by:JAMES
Comment Utility
Baan,

WebGrid1 is a databound grid which is linked to another bound dataset.  I iterate through this grid on startup to populate my dataset called priceStream1.

I am not trying to see this data in another web page, I just want to retrieve it in the same page.  

Would you still consider it a session issue?

Thanks.

James.
0
 
LVL 18

Expert Comment

by:DotNetLover_Baan
Comment Utility
ok... I got it now... sorry about that.
Try to insert a strongly typed row just to see if you can insert into the "Instrument" table. Don't use the loop... for testing.

-Baan
0
 

Author Comment

by:JAMES
Comment Utility
The instrument table is being updated no problem - I show the XML from the datagrid after all the updates have been done and all is fine - they are all there...  It's only when I try to retrieve that data (after a button click elsewhere but on the same page) that it's gone.

I think you are correct when you say I have to save the data in a session object (or viewstate) and then repopulate the dataset after postback!

Would you agree?

Thanks.

0
 
LVL 18

Accepted Solution

by:
DotNetLover_Baan earned 500 total points
Comment Utility
hmm, ya.. since you are clicking on a button to display the data, this is as good as a different page, but with Page.IsPostBack = true. Go ahead and use session... that should work.
-Baan
0

Featured Post

6 Surprising Benefits of Threat Intelligence

All sorts of threat intelligence is available on the web. Intelligence you can learn from, and use to anticipate and prepare for future attacks.

Join & Write a Comment

AJAX ModalPopupExtender has a required property "TargetControlID" which may seem to be very confusing to new users. It means the server control that will be extended by the ModalPopup, for instance, if when you click a button, a ModalPopup displays,…
I recently went through the process of creating a Calendar Control of events with the basis of using a database to keep track of the dates that are selectable, one requirement was to have the selected date pop-up in a simple lightbox.  At first this…
It is a freely distributed piece of software for such tasks as photo retouching, image composition and image authoring. It works on many operating systems, in many languages.
When you create an app prototype with Adobe XD, you can insert system screens -- sharing or Control Center, for example -- with just a few clicks. This video shows you how. You can take the full course on Experts Exchange at http://bit.ly/XDcourse.

771 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

Need Help in Real-Time?

Connect with top rated Experts

12 Experts available now in Live!

Get 1:1 Help Now