konvertieren Sie die Ergebnisse von SQL-Anweisung, um die Liste
Ich versuche, um die Ergebnisse einer SQL-Anweisung in ein Kombinationsfeld auf einem Formular. Ich war in der Lage, das Netz für eine Antwort und ich kann nicht weiter als dieses:
using (SqlCeConnection c = new SqlCeConnection(
Properties.Settings.Default.CW2_DBConnectionString))
{
c.Open();
List<Visit> rows = new List<Visit>();
SqlCeCommand cmd = c.CreateCommand();
cmd.CommandText = "SELECT PICKUP_ID FROM PICKUP";
c.Open();
cmd.ExecuteNonQuery();
SqlCeDataReader reader = cmd.ExecuteReader();
while (reader.Read())
{
}
cmbPickupID.Items.Add(rows);
}
Ich bin nicht sicher, was in die while-Schleife. Ich habe so etwas wie:
rows.Add(reader["PICKUP_ID"].ToString());
Aber offensichtlich hat es nicht funktioniert. Der Besuch der Klasse hat und für VisitID. Hat jemand irgendwelche Ideen?
- Welche Art von Konstruktoren nicht
Visit
haben? - Sowohl Ihre SqlCeCommand und SqlCeDataReader werden müssen, in
using
Blöcke.
Du musst angemeldet sein, um einen Kommentar abzugeben.
Vorneweg: Sie brauchen nicht die
cmd.ExecuteNonQuery();
Zweitens: wenn Ihr
Visit
Klasse hat eine Eigenschaft PICKUP_ID, und Sie werden mit einer Liste derVisit
Elemente, dann müssen Sie die tatsächlichenVisits
auf Ihrer Liste, nicht nur strings, wie folgt:wenn Sie nur die id ' s, dann könnten Sie auch einfach eine
List<string>
. Der code, den Sie geschrieben würde dann funktionieren.Loszuwerden
cmd.ExecuteNonQuery();
es nicht nötig ist, ist es?Versuchen Sie dies:
Ich, was Sie verwenden können
Reflection
und einige Dinge anders.Ich schlage vor, Sie verwenden
Dapper
.Können Sie Dapper zu konvertieren, das Ergebnis einer Abfrage auf eine Klasse.
Zur Verwendung dapper, dies zu tun :
1 : Rechtsklick auf dein Projekt in
Visual studio
und wählen SieManage Nuget Packages
.2:
search Online
Textfeld Dapper.3 : nach der Suche nach dieser DLL-Datei auf dem web, die Sie installieren können,.(Sie haben die meisten eine Verbindung zum internet).
4 : erstellen Sie Ihre
Domain Class
5 : Wenn Sie haben irgendein Feld, dass die meisten konvertieren zu einigen Feld mit ehrerbietigen Typ(Enum-Typ)
mag
Sex
Feld.6 : erstellen der Verbindungszeichenfolge und die
sqlConnection
Objekt :7 : und finilly verwenden
Dapper.SqlMapper
zu führen, und konvertieren Sie Abfrage in Ihrem domain-Klasse.am Ende können Sie
TestList
.