ciao,
ho necessità di unire due dataset con dati simili, ho pensato di utilizzare merge, ma mi da errore.. non so se è errore di sintassi o meno... qlk può aiutarmi? il codice è il seguente..
void ricorsiva(string userP, string userA)
{
DataSet DSetR = new DataSet();
DataSet DSetR2 = new DataSet();
string Cnnstr = System.Configuration.ConfigurationSettings.AppSettings["CN1"].ToString();
bool ret2 = false;
ret2 = clsFunctions.LoadDataSetFromSqlStatement(Cnnstr, "SELECT kiave1 FROM amicizie WHERE (amicizie.kiave2 = '" + userP + "')", "PROVA2", ref DSetR, true);
bool ret3 = false;
ret3 = clsFunctions.LoadDataSetFromSqlStatement(Cnnstr, "SELECT kiave2 FROM amicizie WHERE (amicizie.kiave1 = '" + userP + "')", "PROVA2", ref DSetR2, true);
if (ret2 == true)
{
if (ret3 == true)
{
if (DSetR2.Tables["PROVA2"].Rows.Count > 0)
{
DSetR2.Tables["PROVA2"].Rows[0]["kiave2"].ToString();
DSetR.Merge(DSetR2, true);
}
}
if (DSetR.Tables["PROVA2"].Rows.Count > 0)
{
DSetR.Tables["PROVA2"].Rows[0]["kiave1"].ToString();
int num;
num = DSetR.Tables["PROVA2"].Rows.Count;
int i;
bool risultato;
risultato = false;
string a;
for (i = 0; i < num; i++)
{
a = DSetR.Tables["PROVA2"].Rows[i]["kiave1"].ToString();
if (a == userA)
{
risultato = true;
break;
}
else
{
risultato = false;
}
if (risultato == true)
{
nessuna.Text = "percorso tra gli urenti selezionati trovato";
}
else
{
this.ricorsiva(a, userA);
}
}
}
else
{
nessuna.Text = "Nessun percorso logico presente";
}
}