2012-04-12 7 views
0

Ich versuche, eine Webseite zu erstellen, wo ein Benutzer den Text bearbeiten kann und wenn sie fertig sind, drücken sie speichern und der neue Text wird in der Datenbank gespeichert.Verwenden Sie ContentEditable zum Speichern in DB mit ASP.NET?

Ich bekomme keine Fehler in meinem Code, aber aus irgendeinem Grund wird der alte Text nur in die db anstelle des neuen Textes umgeschrieben.

Hier ist mein Code-behind:

protected void saveBtn_Click(object sender, EventArgs e) 
{ 
    string newName; 
    string newIntro; 
    string newEduc; 
    string newWork; 

    h1New.Text = h1.Text; 

    newName = h1New.Text; 
    newIntro = intro.Text; 
    newEduc = educ.Text; 
    newWork = employ.Text; 

    string connectionInfo = ConfigurationManager.ConnectionStrings["ApplicationServices"].ConnectionString; 

    using (SqlConnection connection = new SqlConnection(connectionInfo)) 
    { 

     connection.Open(); 
     SqlCommand myCommand = new SqlCommand("UPDATE simpleContent SET userName = @newName, infoContent = @newIntro, educContent = @newEduc, workContent = @newWork WHERE userID = @userName", connection); 

     try 
     { 

      string username = HttpContext.Current.User.Identity.Name; 
      myCommand.Parameters.AddWithValue("@userName", username.ToString()); 
      myCommand.Parameters.AddWithValue("@newName", newName.ToString()); 
      myCommand.Parameters.AddWithValue("@newIntro", newIntro.ToString()); 
      myCommand.Parameters.AddWithValue("@newEduc", newEduc.ToString()); 
      myCommand.Parameters.AddWithValue("@newWork", newWork.ToString()); 
      myCommand.ExecuteNonQuery(); 
      connection.Close(); 
     } 
     catch 
     { 
      Response.Redirect("http://www.google.co.uk"); 
     } 


    } 
} 

Ich würde irgendwelche Hinweise zu schätzen wissen, die Sie haben.

+0

Können Sie den Code schreiben Sie in Ihrem 'Page_Load' Methode haben? – Reinaldo

Antwort

0

versuchen Sie Code in Format zu setzen:

protected void saveBtn_Click(object sender, EventArgs e) 
{  
// add variables 
    string connectionInfo = (...) 
    string commandText = (...) 

    using (...){ 
     SqlCommand myCommand = (...) 
     // add parameters 

    try 
    { 
     connection.Open(); 
     myCommand.ExecuteNonQuery(); 
     connection.Close(); 
    } 

    catch (Exception ex) 
      { 
       (...) 
      } 
} 
+0

Ich habe das versucht und ich habe das gleiche Ergebnis. Die Seite wird einfach neu geladen und die Werte in der Datenbank sind immer noch gleich. – user1305075

+0

Sie Verbindungszeichenfolge sind korrekt? Versuchen Sie, Ihren Code zu debuggen und den Wert der Variablen zu sehen, um zu sehen, wo der Code nicht das getan hat, was er sollte. – MarcoM

Verwandte Themen