Questo sito utilizza cookies, anche di terze parti, per mostrare pubblicità e servizi in linea con il tuo account. Leggi l'informativa sui cookies.
Username: Password: oppure
C# / VB.NET - Errore: La riga appartiene già a un'altra tabella
Forum - C# / VB.NET - Errore: La riga appartiene già a un'altra tabella

Avatar
virgola (Normal User)
Newbie


Messaggi: 1
Iscritto: 17/11/2014

Segnala al moderatore
Postato alle 9:23
Lunedì, 17/11/2014
Ciao a tutti, sono alle prime armi con vb.net quindi sicuramente scriverò delle stupidate che vi prego di perdonarmi. Sono alle prese con un errore in fase di inserimento di un record in una DataGridView. Mi spiego:

- Ho creato un DataSet (che, spostandolo sul form ho chiamato mioDataSet) che contiene due tabelle e le ho relazionate attraverso gli ID in questo modo: tabellaO1.idtbl2 <--> tabellaC2.id
- Poi ho creato un BindingSource (bsUnione) con le seguenti proprietà: DataSource=mioDataSet; DataMember=tabellaO1
- Poi ho aggiunto due DataGridView (dgvTabellaC2 e dgvTabellaO1). Da codice le ho popolate semplicemente così: dgvTabellaC2.DataSource=mioDataSet.TabellaC2 e dgvTabellaO1.DataSource=bsUnione (dimenticavo: prima ho popolato il dataset con gli appositi adapter.fill
- Poi ho fatto una funzione che al click su una riga di dgvTabellaC2, mi riempia dgvTabellaO1 solo con i record corretti
- Fin qui funziona tutto. Ora arriviamo all'errore. Voglio aggiungere una riga in dgvTabellaO1. Aggiungo una form di dialogo che, passandogli l'ID di TabellaC2, mi restituisca un oggetto di tipo DataSet.TabellaO1Row. Queste sono le istruzioni che richiamano la form e cercano di aggiungere la riga:
Codice sorgente - presumibilmente VB.NET

  1. Dim tc2ID As Integer = CInt(dgvTabellaC2.CurrentRow.Cells(0).Value)
  2.         Dim RigaCreata As New CreoRigaDialog
  3.  
  4.         If RigaCreata.ShowDialog(tc2ID) = Windows.Forms.DialogResult.OK Then
  5.             Dim dr As DataRow = RigaCreata.Nuova
  6.             MioDataSet.TabellaO1.AddTabellaO1Row(dr)
  7.         End If



L'errore in oggetto mi appare a questa riga: MioDataSet.TabellaO1.AddTabellaO1Row(dr)

Scusate se mi sono dilungato troppo, ma senza le premesse mi risultava difficile spiegare il tutto.
Grazie


Virgola
PM Quote