[ADO.Net] Ricerca su chiave primaria

lunedì 17 marzo 2008 - 09.54

FedericoC Profilo | Junior Member

Ciao,

Ho scritto questo codice:

dt = new DataTable();
dt.TableName = "Tasse";
ds.Tables.Add(dt);
dc = new DataColumn();
dc.Caption = "Codice";
dc.ColumnName = "Codice";
ds.Tables["Tasse"].Columns.Add(dc);
dc = new DataColumn();
dc.Caption = "id";
dc.ColumnName = "id";
ds.Tables["Tasse"].Columns.Add(dc);
ds.Tables["Tasse"].PrimaryKey = new DataColumn[] { ds.Tables["Tasse"].Columns[1] };


DataRow drTassa = ds.Tables["Tasse"].NewRow();
drTassa = ds.Tables["Tasse"].Rows.Find("67"); //Codice della tassa
prezzoTassa = System.Convert.ToDecimal(drTassa[2]);


Non riesco capire perchè questo non mi trova niente...

Il valore "67" è presente nel datarow, sbaglio qualcosa?

rossimarko Profilo | Guru

Ciao,

nel codice che hai postato non vedo il popolamento della tabella. Ci manca qualcosa?

Io ho provato il tuo codice aggiungendo una riga con l'id 67 e a quel punto la trova correttamente:

DataSet ds = new DataSet(); DataTable dt = new DataTable(); dt.TableName = "Tasse"; ds.Tables.Add(dt); DataColumn dc = new DataColumn(); dc.Caption = "Codice"; dc.ColumnName = "Codice"; ds.Tables["Tasse"].Columns.Add(dc); dc = new DataColumn(); dc.Caption = "id"; dc.ColumnName = "id"; ds.Tables["Tasse"].Columns.Add(dc); ds.Tables["Tasse"].PrimaryKey = new DataColumn[] { ds.Tables["Tasse"].Columns["id"] }; DataRow drTassa = ds.Tables["Tasse"].NewRow(); drTassa["Codice"] = "aaa"; drTassa["id"] = 67; dt.Rows.Add(drTassa); DataRow drFind = ds.Tables["Tasse"].Rows.Find("67"); //Codice della tassa string codice = drFind["Codice"].ToString();

FedericoC Profilo | Junior Member

c'era un ds.clear() che mi cancellava tutto il resto...

Partecipa anche tu! Registrati!
Hai bisogno di aiuto ?
Perchè non ti registri subito?

Dopo esserti registrato potrai chiedere
aiuto sul nostro Forum oppure aiutare gli altri

Consulta le Stanze disponibili.

Registrati ora !
Copyright © dotNetHell.it 2002-2024
Running on Windows Server 2008 R2 Standard, SQL Server 2012 & ASP.NET 3.5