none
rowB.ItemArray=rowA.ItemArray mir ReadOnly Spalte RRS feed

  • Frage

  • Hallo zusammen,

    kann mir jemand etwas dazu sagen.

    Ich möchte den Inhalt einer typsierten DataRow (mit Designer erstelltes DataSet) in eine andere übertragen.

    Ich habe in jeder Tabelle eine TimeStamp Spalte, die wird vom Designer auf ReadOnly gesetzt.

    Was für mich seltsam ist.
    Mit den Rows mancher Tabellen ist es möglich, eine ItemArray Zuweisung zu machen, bei anderen nicht.

    Kann mir jemand sagen wieso?

    Gruss Peter

    Freitag, 28. November 2014 11:00

Antworten

  • Hallo Peter,

    wenn eine DataColumn als ReadOnly gekennzeichnet ist, kann sie bei einer Zuweisung nicht mehr geändert werden, das gilt sowohl für die Zuweisung als einzelne Spalte als auch via ItemArray.

    Um die Spalte verändern zu können, muss zwischenzeitlich ReadOnly auf Falsch gesetzt werden - sinnvollerweise in einem Try ... Finally damit die Einstellung auch bei einer Ausnahme bei der Zuweisung am Ende wieder Wahr ist.

    Eventuell passt aber in Deinem Fall auch LoadDataRow womit man das Umgehen kann.

    Bei einer TimeStamp / RowVersion Spalte sollte man auf ReadOnly nicht verzichten, da es einem DataAdapter signalisiert, dass die Spalte nicht  übertragen wird - was zu einem Fehler führen würde.

    Gruß Elmar

    Samstag, 29. November 2014 08:11
    Beantworter

Alle Antworten

  • Hallo Peter,

    wenn eine DataColumn als ReadOnly gekennzeichnet ist, kann sie bei einer Zuweisung nicht mehr geändert werden, das gilt sowohl für die Zuweisung als einzelne Spalte als auch via ItemArray.

    Um die Spalte verändern zu können, muss zwischenzeitlich ReadOnly auf Falsch gesetzt werden - sinnvollerweise in einem Try ... Finally damit die Einstellung auch bei einer Ausnahme bei der Zuweisung am Ende wieder Wahr ist.

    Eventuell passt aber in Deinem Fall auch LoadDataRow womit man das Umgehen kann.

    Bei einer TimeStamp / RowVersion Spalte sollte man auf ReadOnly nicht verzichten, da es einem DataAdapter signalisiert, dass die Spalte nicht  übertragen wird - was zu einem Fehler führen würde.

    Gruß Elmar

    Samstag, 29. November 2014 08:11
    Beantworter
  • Hallo Peter,

    Ich gehe davon aus, dass Elmars Antwort Dir weitergeholfen hat. Solltest Du noch Rückfragen dazu haben, gib bitte Bescheid.

    Gruß,
    Dimitar


    Bitte haben Sie Verständnis dafür, dass im Rahmen dieses Forums, welches auf dem Community-Prinzip „IT-Pros helfen IT-Pros“ beruht, kein technischer Support geleistet werden kann oder sonst welche garantierten Maßnahmen seitens Microsoft zugesichert werden können.

    Dienstag, 2. Dezember 2014 13:48
    Administrator
  • Hallo Elmar,

    dir wieder mal Dank für deine ausführliche Antwort.

    Gruss Peter

    Donnerstag, 4. Dezember 2014 08:31