Quando si ha a che fare con i dataSet o dataTable tipizzati, si può ricevere l’errore (all’atto della select):
“Impossibile attivare i vincoli. Una o più righe contengono valori che violano il vincolo non-null, unique o foreign-key.”
o anche la sua versione inglese
“Failed to enable constraints. One or more rows contain values violating non-null, unique, or foreign-key constraints”
Senza nessun’altra indicazione. Ma c’è un modo per sapere qual’è la colonna in errore e qual’è esattamente la violazione. Basta iterare sulla collezione GetErrors, presente sul datatable. Ad esempio (VB.NET):
Try Me.Adapter.Fill(dataTable) Catch ex As Exception Dim err As DataRow() = dataTable.GetErrors Dim msg As New StringBuilder For Each e In err msg.AppendLine(e.RowError) Next End Try
In questo modo la variabile msg conterrà tutte le colonne con un errore e il tipo di errore.