C# ASP.Net Database update

Cyrius

Cadet 3rd Year
Registriert
Sep. 2009
Beiträge
50
Hallo!

Muss von der Schule aus mit ASP.NET arbeiten.
Eigentlich eine ganz einfache Aufgabe.

Eine "Song-Datenbank" ist zu erstellen.
Unteranderem soll auch eine "Edit"-Funktion für bereits eingetragene Songs existieren.
Nur leider hab ich die im Moment mit ziemlichen Hardcode realisiert^^
Ich änder nämlich das Objekt, such das alte mit der gleichen ID, lösche das Alte und füge das Neue neu hinzu. Problem dabei ist, dass das alte Objekt z.B. ID 1 hat, und das Neue dann eben ID xy...

Die Frage bezieht sich eigentlich nur, wie man ein bestehendes Objekt in der Datenbank ändert.
Google hat bis jetzt auch noch nicht geholfen :o

EDIT:

Models.SongDBEntities ctx = new Models.SongDBEntities();
Ist halt die Collection mit den Objekten
Models.Song ist ein einzelnes Objekt der Collection (solche sollen verändert werden.)

EDIT2:
Hab jetzt das Ganze überarbeitet.
Den Song mitgegeben, den originalen Song per ID gesucht und dann den originalen mithilfe des Mitgegebenen geändert.
also origSong.Title = editSong.Title;

Gibt es auch noch eine elegantere Lösung?
 
Zuletzt bearbeitet:
Da ich weder den Aufbau deiner Masken noch den genauen Code kenne, kann ich nur Mutmaßungen anstellen.
Aber bei ner EDIT-Funktion würde ich eine Update-Methode schreiben (Prepared Statement und so ;)) und dann beim drücken von Speichern die Werte des Objekts anpassen und dann in der DB updaten.

Also nicht die ID löschen.

song.Name = neuerName
song.Interpret = neuerInterpret
etc....

song.update
 
Moment, benutzt du ADO.NET oder Trans-SQL? Ich sehe da was mit entity... also muss es eigentlich ADO sein. hmm oder was das mit Entity von LINQ-TO-SQL?

Also wenn die Techniken genutzt werden, dann braucht du kein Prepaired Statement. Such einfach nach den Tutorials für LINQ-TO-SQL oder ADO, dann siehst du auch wie alles "einfacher" funktioniert!

EDIT:

Du darfst hier eigentlich nicht um Lösungen nach Hausaufgaben fragen :D
 
Zurück
Oben