Sono vari i modi per affrontare una situazione del genere. La funzione Update del dataadapter verifica appunto il rowstate della riga rispetto a quando e' stata caricata dal db (original) da come e' adesso (current). Nel tuo caso non esiste la versione original.
Una possibilita' e' quella di evitare la funzione update e fare un ciclo su tutte le righe e all'interno del ciclo chiamare direttamente un command per effettuare l'inserimento (dopotutto e' praticamente lo stesso lavoro che fa il dataadapter).
Se vuoi usare il dataadapter, puoi fare affidamento sul rowstate per passare alla funzione update solo le righe che sono added es.
e a questo punto rimarresti con le righe modified che puoi gestire usando un ciclo e un command che inserisce le righe nel db.codice:dap.Update(tuadatatable.GetChanges(DataRowState.Added))
Oppure altra possibilita', potrebbe essere quella di usare la funzione update per tutte le righe ma impostando i command del dataadapter in modo da far utilizzare delle storedprocedure che appunto possono verificare se il record esiste (procedendo cosi all'update) o se non esiste (procedendo invece con un insert).

					
					
					
						
  Rispondi quotando