Hallo,
ich hoffe ich bin im richtigen Sub gelandet und ihr könnt mir helfen.
Ich programmiere Momentan eine Anwendung um eine SQL-Tabelle mit über 65.000 Datensätzen besser zu verwalten.
Unter anderem soll mein Programm eine Suchfunktion mit verschiedenen Kritereien enthalten.
Ich habe meinen Connectionstring, ein Datagridview, ein Dataset, einen SQLstring, welöcher dynamisch erstellt wird, in dem man in Textoxen die Kriterien eingibt etc.
Nun zu meiner Frage.
Mein Datagridview bleibt leider beim Klick auf den Button für die Suche einfach grau. Keine leeren Zeilen und schon gar keine Suchergebnisse.
Ich habe schon viel rumprobiert. die Connection funktioniert auf jedenfall richtig.
Hier mal der relevante Codeausschnitt bei dem ich den Fehler vermute.
SqlConnection conn = new SqlConnection("Data Source=ibmb12\\misc;Initial Catalog=Archiv;Integrated Security=SSPI");
SqlDataAdapter Adapter = new SqlDataAdapter(strSQL, conn);
DataSet bind = new DataSet();
SqlCommand cmd = new SqlCommand();
cmd.Connection = conn;
cmd.CommandText = strSQL;
BindingSource bs = new BindingSource(bind,null);
try
{
conn.Open();
cmd.ExecuteNonQuery();
}
catch(Exception ex)
{
MessageBox.Show(Convert.ToString(ex));
}
bind.Clear();
Adapter.Fill(bind, "Archiv");
dataGridView1.DataSource = bs;
dataGridView1.ReadOnly = true;
conn.Close();
Vielen Dank im Vorraus.
Pat
Console.WriteLine("Einen schönen Tag wünscht euch Paddy");
be the hammer, not the nail!
könntest du deine antwort etwas verständlicher erklären?
bin leider nicht so der Pro was csharp angeht.
was genau meinst d u mit der trennung von GUI und DB layer?
meinst du "DataBind();" ?
diese option gibt es leider nicht. btw ich arbeite mit Visual Studio 2010.
Die Form die ich benutze, habe ich bei meinen recherchen immer wieder so gefunden und das soll angeblich auch funktionieren.
danke schonmmal für die schnelle antwort
Console.WriteLine("Einen schönen Tag wünscht euch Paddy");
Schau einfach mal in die :rtfm:, 🛈 und 📗.
be the hammer, not the nail!
genau das ist das problem. ich habe schon seit einiger zeit alles durchsucht was ich gefunden habe.
uch stoße imemr wieder auf die Form
da.fill(dataset_name,connectionstring);
datagridview1.DataSource = dataset_name;
aber das funktioniert ja nicht.
ich weiß nicht was ich da jetzt anders machen muss, damit die Suchergebnisse auch korrekt angezeigt werden.
Gruß
Console.WriteLine("Einen schönen Tag wünscht euch Paddy");
Wenn du die Dokus alle gesehen hast, bist du ja sicherlich auf GridView.DataBind gestoßen.
Bitte bei Verweisen sprechende Namen verwenden.
Siehe [Hinweis] Wie poste ich richtig? 3.1
be the hammer, not the nail!
Hallo,
noch ein paar Hinweise zu Deinem Sourcecode :
"cmd.ExecuteNonQuery()" brauchst Du nicht, das macht das Fill für Dich.
Statt "Convert.ToString(ex)" schreib lieber "ex.Message".
Nimm den Befehl "Adapter.Fill(bind, "Archiv")" in den try-Block mit auf, denn da kann auch ein Fehler passieren.
Grüße Bernd
Workshop : Datenbanken mit ADO.NET
Xamarin Mobile App : Finderwille Einsatz App
Unternehmenssoftware : Quasar-3