Ich konvertiere derzeit Code, der Daten in einer XML-Datei speichert, um sie stattdessen in einer SQLite-Datenbank zu speichern. Die Datenbank verfügt über eine einzelne Tabelle mit 4 Spalten:Verwenden einer Liste, die von einer SQLite-Abfrage in einer Foreach-Anweisung abgerufen wird
thumbnail | title | threadid | url
Alle Einträge in der Datenbank Strings sind. Mit meinem alten Code extrahiere ich alle Daten aus einer XML-Datei und befülle ein Datagrid mit den Werten. Mein Ziel ist, genau das zu tun, aber Daten aus der SQLite-Datenbank zu verwenden. Ich kann erfolgreich alle Daten aus der Datenbanktabelle extrahieren wie so:
public List<Database> getFromTable()
{
List<Database> items = new List<Database>();
string sql = "SELECT * FROM blacklist";
SQLiteCommand command = new SQLiteCommand(sql, m_dbConnection);
using (SQLiteDataReader reader = command.ExecuteReader())
{
while (reader.Read())
{
var item = new Database();
item.imgstring = (string)reader["thumbnail"];
item.titlestring = (string)reader["title"];
item.threadidstring = (string)reader["threadid"];
item.urlstring = (string)reader["url"];
items.Add(item);
}
}
return items;
}
Der Teil I nun an bin stecken, wie die Ergebnisse in der Liste zurückgegeben verwenden. Derzeit bin Aufruf ich die Methode wie folgt:
var items = database.getFromTable();
jedoch nach der verpassten einige Beispiele zu finden, kann ich nicht herausfinden, wie die foreach
Linie zusammen, um die Elemente in der zurückgegebenen Liste verwenden zu setzen. Z.B;
foreach (??? in items)
{
// Populate line in datagrid with thumbnail, title, threadid, url
}
ich das Datagrid bevölkert bekommen kann, ist es einfach zu verstehen, wie meine ‚Elemente‘ zum Zusammenbruch in eine nutzbare Form. Alle Hinweise geschätzt.
Bearbeiten Ich werde diese Informationen in ein Datengrid hinzufügen, so dass jeder Zellenwert aus der SQLite-Tabelle in eine entsprechende Zelle auf dem Datengitter eingefügt wird.
Edit 2 Es ist erwähnenswert, dass während thumbnail
von meiner SQLite-Datenbank ein String-Wert ist, ist es eigentlich ein Bild, das zu einem Base64ImageRepresentation
umgewandelt worden ist, so kann ich es als String-Wert speichern. Ein Teil des Erhaltens jedes Wertes aus der SQLite-Datenbank ist so, dass ich diese Zeichenkette zurück in ein Bild konvertieren kann, bevor ich sie in meine DataGridView
einfüge.
Wo wird 'm_dbConnection' deklariert? Sieht so aus, als ob du deine Verbindung nicht richtig entsorgst. Es muss auch in eine using-Anweisung eingebunden werden. – mason
Es ist in der gleichen Klasse wie 'öffentliche Liste getFromTable()'. Ich werde das angesprochen bekommen. –
Rawns
Was genau ist Ihr Ziel? Sie möchten die Werte in der 'List Elemente 'in einem' DataGridView' anzeigen? "Teile meine 'Gegenstände' in eine brauchbare Form" was genau meinst du mit "benutzbarer" Form? –