'System.Data.DataRowView' does not contain a property ......

G

Guest

I am trying to bind two tables to two different list boxes

Ther tables are working as I use them on another page wth no problems

The code is as follows...

private void Page_Load(object sender, System.EventArgs e

oleDbDataAdapter2.Fill( dataSet1)
oleDbDataAdapter4.Fill( dataSet1)

listVersion.DataSource = dataSet1
listVersion.DataTextField = "version"
listVersion.DataValueField = "version"
listVersion.DataBind()

listMerchant.DataSource = dataSet1
listMerchant.DataTextField = "merchant"
listMerchant.DataValueField = "merchant"
listMerchant.DataBind()


the merchant one works fine, the versions one returns..

DataBinder.Eval: 'System.Data.DataRowView' does not contain a property with the name version.

both adapters are created the same way and work fine on another page (the versions table is working as expected). I don't think its a problem with the db. If I remove the listVersion.Bind(); it will compile and run loading only the merchants list of course..

I know this is probably not enough info, but maybe other people have seen this and can point to the right direction

thanks so much !!
 
T

Teemu Keiski

Hi,

the data is in two separate tables in the DataSet. You need to distinguish
the table to use when databinding. For example:

listVersion.DataSource = dataSet1.Tables[0];
....
listMerchant.DataSource = dataSet1.Tables[1];

not sure which way it should be as I know nothing about your data/database.
You can give tables a name when calling Fill method and access table with
that name via DataSet's Tables property.

oleDbDataAdapter2.Fill( dataSet1,"Table1");
oleDbDataAdapter4.Fill( dataSet1,"Table2");

and then respectively:

listVersion.DataSource = dataSet1.Tables["Table1"];
....
listMerchant.DataSource = dataSet1.Tables["Table2"];

--
Teemu Keiski
MCP, Microsoft MVP (ASP.NET), AspInsiders member
ASP.NET Forum Moderator, AspAlliance Columnist
http://blogs.aspadvice.com/joteke


etropic said:
I am trying to bind two tables to two different list boxes.

Ther tables are working as I use them on another page wth no problems.

The code is as follows....

private void Page_Load(object sender, System.EventArgs e)
{
oleDbDataAdapter2.Fill( dataSet1);
oleDbDataAdapter4.Fill( dataSet1);

listVersion.DataSource = dataSet1;
listVersion.DataTextField = "version";
listVersion.DataValueField = "version";
listVersion.DataBind();

listMerchant.DataSource = dataSet1;
listMerchant.DataTextField = "merchant";
listMerchant.DataValueField = "merchant";
listMerchant.DataBind();
}


the merchant one works fine, the versions one returns...

DataBinder.Eval: 'System.Data.DataRowView' does not contain a property with the name version.

both adapters are created the same way and work fine on another page (the
versions table is working as expected). I don't think its a problem with the
db. If I remove the listVersion.Bind(); it will compile and run loading
only the merchants list of course...
I know this is probably not enough info, but maybe other people have seen
this and can point to the right direction ?
 
G

Guest

great ! I will look into that

I thought though that was only true with UNTyped dataSet, and I am using a Typed DataSet

thanks again !
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Members online

Forum statistics

Threads
473,968
Messages
2,570,149
Members
46,695
Latest member
StanleyDri

Latest Threads

Top