Solved

Set Gridview.datasource to a datatable

Posted on 2010-11-15
12
1,263 Views
Last Modified: 2012-05-10
I want to extract the data from a gridview to a datatable.  

I've tried both but receive errors.

DataTable tbl = this.gv.DataSource as DataTable;
DataTable dtGrid = (DataTable)this.gv.DataSource;

any ideas?
0
Comment
Question by:CipherIS
  • 6
  • 5
12 Comments
 
LVL 6

Expert Comment

by:ajb2222
Comment Utility
This will only work if you originaly set the datasource to a datatable

So if at one point you have
datatable tbl
// fill your table
gv.DataSource = tbl

then you can use

DataTable dtGrid = (DataTable)gv.DataSource;
0
 
LVL 1

Author Comment

by:CipherIS
Comment Utility
I originally set the datasource to a datatable.

I've attached a snapshot.  The gridview has data but when i try to set the datasource to the datatable i receive a null.

Any ideas?
datatable.jpg
0
 
LVL 1

Author Comment

by:CipherIS
Comment Utility
how do i set viewstate to the gridview?
0
 
LVL 62

Expert Comment

by:Fernando Soto
Comment Utility
We need to see what was originally assigned to this.gvNotification.DataSource?

// Show the line of code where
this.gvNotification.DataSource = "What";
0
 
LVL 1

Author Comment

by:CipherIS
Comment Utility
this.gvNotification.Datasource = Datatable.

The datatable was populated with data from a Database.
0
 
LVL 1

Author Comment

by:CipherIS
Comment Utility
DataTable dt = Notification.GetNotifications();  //Returns DataTable
this.gvNotification.DataSource = dt;
this.gvNotification.DataBind();
0
Find Ransomware Secrets With All-Source Analysis

Ransomware has become a major concern for organizations; its prevalence has grown due to past successes achieved by threat actors. While each ransomware variant is different, we’ve seen some common tactics and trends used among the authors of the malware.

 
LVL 62

Expert Comment

by:Fernando Soto
Comment Utility
Well then from the looks of the screen shot the Datatable was NOT populated with any results from the database and when you assigned it to the this.gvNotification.DataSource it got assigned a null.

Does the data grid show any results? Or can you verify that the Datatable that was populated from the database did return results.
0
 
LVL 62

Expert Comment

by:Fernando Soto
Comment Utility
Check to make sure that dt did in fact return results.
0
 
LVL 1

Author Comment

by:CipherIS
Comment Utility
The database did return data as the grid displays results.
datatable.jpg
0
 
LVL 62

Expert Comment

by:Fernando Soto
Comment Utility
I see from your last post that this is a web application of which I have little knowledge of. Are you trying to do this :

DataTable dtGrid = (DataTable)this.gv.DataSource;

After a postback? If so did you retrieve the data table from a session state?

0
 
LVL 1

Author Comment

by:CipherIS
Comment Utility
When I get to this point in the code

DataTable dtGrid = (DataTable)this.gv.DataSource;

dtGrid is Null.
0
 
LVL 62

Accepted Solution

by:
Fernando Soto earned 500 total points
Comment Utility
As I stated my knowledge of web apps is limited. But when you do this :

DataTable dtGrid = (DataTable)this.gv.DataSource

Is this after you display the data to the user? If so have you restored the data table back to the this.gv.DataSource from let say the session state? If not this.gv.DataSource is most likely is a null.
0

Featured Post

What Should I Do With This Threat Intelligence?

Are you wondering if you actually need threat intelligence? The answer is yes. We explain the basics for creating useful threat intelligence.

Join & Write a Comment

Summary: Persistence is the capability of an application to store the state of objects and recover it when necessary. This article compares the two common types of serialization in aspects of data access, readability, and runtime cost. A ready-to…
We all know that functional code is the leg that any good program stands on when it comes right down to it, however, if your program lacks a good user interface your product may not have the appeal needed to keep your customers happy. This issue can…
Sending a Secure fax is easy with eFax Corporate (http://www.enterprise.efax.com). First, Just open a new email message.  In the To field, type your recipient's fax number @efaxsend.com. You can even send a secure international fax — just include t…
This video gives you a great overview about bandwidth monitoring with SNMP and WMI with our network monitoring solution PRTG Network Monitor (https://www.paessler.com/prtg). If you're looking for how to monitor bandwidth using netflow or packet s…

762 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

6 Experts available now in Live!

Get 1:1 Help Now