19 messaggi dal 27 ottobre 2005
Salve raga!
Esiste (e se si come si chiama che non la trovo!!) nel FW 2.0 una eccezione specifica per l'errore di chiave duplicata in fase di inserimento di un record?
(intercettare una generica "System.Exception" e andare a vedere se nella proprietà "message" si parla di "PRIMARY KEY violation" o sistemi simili non mi sembra molto elegante, ma al momento non ho trovato di meglio!

Illuminatemi thanx!!
Dovrestivedere SqlException ed vedereil numero di errore, da quello sai di che errore si tratta.
Mi sembra sia il 2601

catch ( SqlException e )
{
if (e.Number == 2601)
//la chiave è duplicata
.....

Però controlla il numero che non ricordo bene.

ciauz

imperugo
myblog : http://imperugo.blogspot.com

imperugo
Microsoft MVP
myblog : http://www.tostring.it
19 messaggi dal 27 ottobre 2005
provo immediatamente grazie!
ma se non usassi sql? (ho dei metodi che lavorando per interfacce pretenderebbero di funzionare indipendentemente dal db che è in uso, cioè uso un riferimento a IDBConnection invece di SQLConnection o OLEDBConnection per intendersi)
altri tipi di eccezione relativi ad altri provider riportano lo stesso codice (a parte verificare qual è il codice) che tu sappia? ti ringrazio di nuovo!
Beh non saprei con altri db, magari nella tua classe che va a sostituire le classi Sql..,OleDb..., ecc puoi aggiungere un contollo nell'exception, o creare una classe tuaException che deriva da SqlException, OleDbException, ecc che vede l'errore e lo confronta con un enumerato.

ciauz

imperugo
myblog : http://blogs.aspitalia.com/imperugo/
myblog : http://imperugo.blogspot.com

imperugo
Microsoft MVP
myblog : http://www.tostring.it

Torna al forum | Feed RSS

ASPItalia.com non è responsabile per il contenuto dei messaggi presenti su questo servizio, non avendo nessun controllo sui messaggi postati nei propri forum, che rappresentano l'espressione del pensiero degli autori.