Benutzer mit den meisten Antworten
c# - PNG Filestream in Datenbank schreiben - ist Erfolgreich aber es werden keine Daten geschrieben

Frage
-
Hallo,
also Ich versuche ein png in ein byte[] zu laden und diesen in eine DB zu schreiben. Es wird keine Exception erzeugt und "Erfolgreich" angezeigt - sprich das letzte catch wird nicht "gefeuert".. Aber irgendwie kommt nix in der Datenbank an?!
Jemand eine Idee was ich falsch mache?
try {
fs = File.Open(storageLocation, FileMode.Open, FileAccess.Read);
fs.Seek(0, SeekOrigin.Begin);image = new byte[fs.Length];
fs.Read(image, 0, image.Length);}
catch(Exception exc) {
Response.Write(exc.Message);
fs.Close();
}
finally {
fs.Close();
}#endregion
#region DatabaseWriter
SqlConnection conn = new SqlConnection(ConfigurationManager.ConnectionStrings["asfafsasdOrder"].ConnectionString);try {
if(ConnectionState.Open != conn.State) {
conn.Open();
}SqlCommand sqlCommand = new SqlCommand();
sqlCommand = conn.CreateCommand();
sqlCommand.CommandText = "UPDATE TImage SET File=@File WHERE Id=@Id";sqlCommand.Parameters.Add("@Id", SqlDbType.NChar).Value = "4afdsf96-169b-4d10-9575-d69cc910baca";
sqlCommand.Parameters.Add("@File", SqlDbType.Image).Value = image;}
catch(Exception exc) {
Response.Write(exc.Message);
if(conn.State != ConnectionState.Closed)
conn.Close();
}
finally {
if(conn.State != ConnectionState.Closed)
conn.Close();
Response.Write("Datenbankaktion erfolgreich!");
}
Antworten
-
ExecuteNonQuery() vielleicht? Mann ich hasse sowas...
- Als Antwort markiert Techtwebty Montag, 16. November 2009 17:21
Alle Antworten
-
Hallo Techtwebty,
Schau Dir die folgenden Diskussionen an. Vielleicht findest Du etwas dass Dir weiter helfen kann.
Grüße,
Robert
-
ExecuteNonQuery() vielleicht? Mann ich hasse sowas...
- Als Antwort markiert Techtwebty Montag, 16. November 2009 17:21
-
ExecuteNonQuery() vielleicht? Mann ich hasse sowas...
Ehrlich gesagt frage ich mich doch manchmal, was manche Leute denken. Wenn Du dein SqlCommand nie ausführst (auf welchem Weg auch immer), wie sollen die Daten dann auch in die Datenbank kommen?
Dein Konto füllt sich ja auch nicht, weil dein Chef dir gesagt hat, dass er dir sounsoviel bezahlen wird. Erst mit Eingang des Überweisungsbetrags machts "Kling" und der Kontostand erhöht sich.
Und ja, ExecuteNonQuery sollte helfen.
Gruß, Stefan
Microsoft MVP - Visual Developer ASP/ASP.NET
http://www.asp-solutions.de/ - Consulting, Development
http://www.aspnetzone.de/ - ASP.NET Zone, die ASP.NET Community