Ich kämpfe. Ich habe Abfrage für meine Datenbank, die eine einzelne Spalte von Daten zurückgibt, und ich muss es als Liste festlegen. Hier ist, woran ich arbeite und ich bekomme einen Fehler beim Konvertieren von void in string.
%Vor%Dann später in der Anwendung
%Vor%Dinge, die ich in Ihrem Code geändert habe:
ImportedFiles
in den Geltungsbereich der gesamten Methode. connect.Close();
nicht aufrufen, da das Verbindungsobjekt in einen using-Block eingebunden ist. Convert.ToString
und nicht (String)
, da der erste alle Datentypkonvertierungen in string behandelt. Ich stieß auf diese Hier
Bearbeiten:
Sie haben ein neues Befehlsobjekt sqlComm
erstellt, anstatt fmd
zu verwenden, das vom Verbindungsobjekt erstellt wurde.
Zunächst ist Ihr Rückgabetyp ungültig. Sie müssen eine Liste zurückgeben. Ein weiteres Problem besteht darin, dass Sie die Liste innerhalb der Schleife initialisieren, sodass Sie in jedem Durchlauf der Schleife eine neue Liste haben und die Zeichenfolge in der Liste nicht hinzufügen. Ihr Code sollte wahrscheinlich eher wie folgt aussehen:
%Vor%Sie haben bereits eine Möglichkeit, die einzelnen Ergebnisse zu erhalten, also sieht es so aus, als müssten Sie nur:
Verschiebe die List<string> ImportedFiles = new List<string>();
außerhalb der while
Schleife.
Rufen Sie ImportedFiles.Add(FileNames);
innerhalb der Schleife auf (nachdem diese Zeichenfolge zugewiesen wurde).
return ImportedFiles
am Ende.
Ändern Sie den Rückgabetyp in List<string>
.