Ergebnis 1 bis 6 von 6
  1. #1
    Dativ Dativ ist offline
    Avatar von Dativ

    C#: DB updaten durch DataSet geht nicht

    Hi!!!
    Der Zugriff auf die DB geht aufjedenfall. Ich lasse mir über einen getter meinen DataSet füllen und lasse mir den Dataset zurückgeben. Mein DataGridView lasse ich dann mit dem DataSet füllen über die Eigenschaft DataSource. Funktioniert auch alles soweit. Nur sobald ich eine Änderung im DataGridView vornehme und auf den Update-Button klicke, ändert er nie etwas. Ich habe schon auf diversen Seiten von Microsoft geschaut, nach denen ihren Beispielen, mache ich eig alles richtig, aber nur eig. Ich weis grad echt nicht, was ich falsch mache, hoffe ihr könnt hier den Fehler finden.

    Code:
    DataSet setVeranstaltungsOrte(DataSet ds) {
    			try {
    				con_dbVeranstaltung.Open();
    
    				cmd_eventCity.CommandType = CommandType.Text;
    				cmd_eventCity.CommandText = 
                                          "SELECT * FROM veranstaltungsorte ORDER BY v_ort_oid";
    				cmd_eventCity.Connection = con_dbVeranstaltung;
    				da_eventcity.SelectCommand = cmd_eventCity;
    				OleDbCommandBuilder cb = new OleDbCommandBuilder(da_eventcity);
    
    				trans = con_dbVeranstaltung.BeginTransaction(IsolationLevel.ReadCommitted);
    				da_eventcity.SelectCommand = cmd_eventCity;
    
    				da_eventcity.ContinueUpdateOnError = true;
    				da_eventcity.SelectCommand.Transaction = trans;
    
    				change = da_eventcity.Update(ds.Tables["veranstaltungsorte"]);
    
    				trans.Commit();
    
    				Info.Print("Record(s) Updated");
    				Info.Print("Es wurden " + change + " Zeilen geändert");
    			}
    			catch (Exception ex) {
    				Info.Print(ex.Message);
    				try {
    					trans.Rollback();
    					Info.Print("Rollback bei EventCities durchgeführt");
    				}
    				catch {
    					// Bleibt leer; Transaktion ist inaktiv
    				}
    			}
    Falls ihr euch über den try-catch-Block wundert, den habe ich so gefunden, auf ner Microsoft-Seite.

    Das nächste, wo ich mir denken kann, woran es vllt liegt ist das DataGridView. Es gibt ja das Event CellValueChanged oder so ähnlich. Kann ich hier im Code irgendwie ne Eigenschaft von der Cell meines DataSets auf geändert bzw. abgeändert setzen oder gibts sowas net? Ich hab bisher sowat net gefunden. Vielleicht, setzt des DataGridView irgendwie bei mir so nen Flag bzw. diesen Status nicht oder falsch.

    mfg

  2. Anzeige

    C#: DB updaten durch DataSet geht nicht

    Schau dir mal diesen Bereich an. Dort ist für jeden was dabei!
  3. #2
    Dativ Dativ ist offline
    Avatar von Dativ

    AW: C#: DB updaten durch DataSet geht nicht

    Habs herausgefunden. Liegt nicht an dem obigen Code.
    Mache jetzt folgendes:
    Code:
    if (ds_eventscities.Tables["veranstaltungsorte"].Rows[e.RowIndex].RowState != DataRowState.Modified)
    			ds_eventscities.Tables["veranstaltungsorte"].Rows[e.RowIndex].SetModified();
    In der Methode wo ich dies mache, klappt es hiermit auch. In der anderen Methode wo ich exakt dasselbe mache ...
    Code:
    if (ds_events.Tables["veranstaltungen"].Rows[e.RowIndex].RowState != DataRowState.Modified)
    			ds_events.Tables["veranstaltungen"].Rows[e.RowIndex].SetModified();
    ... wirft er mir ne NullReferenceException. Und ich weis nicht wieso. Also diese wirft er in dem IF. Aber wenn ich so durchschaue ist eig alles versorgt und nichts ist null.
    Zwar muss ja wohl irgendwas null sein, aber ich finde es nicht, was null ist.

    Hoffe jemand kann mir weiterhelfen.

    mfg

  4. #3
    craft craft ist offline
    Avatar von craft

    AW: C#: DB updaten durch DataSet geht nicht

    Ich bin zwar kein voller Programmierer, aber im laufe meiner Ausbildung hab ich auch dies im Unterricht gelernt. Und ehrlich gesagt, kann ich an diesem Codeschnipsel nicht viel erkennen. Ich bräuchte immer den ganzen Code um das beurteilen zu können.

  5. #4
    Dativ Dativ ist offline
    Avatar von Dativ

    AW: C#: DB updaten durch DataSet geht nicht

    Kann geclosed werden. Hatte einen sau dummen SCHREIBFEHLER!!!!
    Ich habe wie oben gepostet dataset.Tables["veranstaltungen"] geschrieben es müsste aber dataset.Tables["veranstaltung"] heißen.
    Ich hasse SCHREIBFEHLER!!!

    mfg trotzdem thx

  6. #5
    HardAndSoft HardAndSoft ist offline
    Avatar von HardAndSoft

    AW: C#: DB updaten durch DataSet geht nicht

    Hallo Dativ,

    dazu wurde LINQ erfunden, denn mit LINQ kann der Compiler solche Schreibfehler vermeiden helfen. Vielleicht solltest Du dir mal LINQ anschauen.

    Viel Spaß beim Entwickeln!

  7. #6
    Dativ Dativ ist offline
    Avatar von Dativ

    AW: C#: DB updaten durch DataSet geht nicht

    Schau ich mir ma an danke. Aber verwenden hätte ich es trotzdem nicht dürfen. Vom Ausbilder war vorgabe DataSet. Und wenn ich ehrlich bin, hätte ich sowieso wenn ich dürfte, viel lieber mit WPF gearbeitet als mit dem alten WindowsForms. Denn da hat ma einfach mehr Möglichkeiten meiner Meinung.

    Trotzdem danke.
    mfg

Ähnliche Themen


  1. Computer startet nicht, geht er wieder Wlan geht nicht: Am Donnerstag ging mein Computer nicht zum einschalten, also habe ich grafik und netzkarte ausgebaut + alle Kabel eingesteckt. Die Batterie am...

  2. BF geht nicht Online, Killzone geht - Ports?: Moin, ich habe einen Netgear WNR834B Router und so ganz komme ich nicht Online. Um genau zu sein komme ich mit BF Bad Company nicht online. Im...

  3. Verbindung durch WI-Fi USB Connector geht nicht!: Hallo zusammen Ich bin mit meinem Latein total am ende,ich weiss nicht mehr was ich noch alles machen soll,ich hoffe irgenjemand hat Zeit und lust...

  4. PS3 Store mit Mastercard GOLD geht nicht? Geht doch mit Umwegen ;-): Hallo, ich bin neu hier und durch einenm Zufall auf dieses Forum gestoßen. So mein erster Post wird doch helfend sein, für Besitzer der...

  5. Updaten geht nicht :/: Da ich leider kein Inet an meine Ps3 ran bringe(cross kabel funzt net), versuch ich sie über usb stick zu updaten. ist zZ 1.60 drauf -> ich weiss...