Kategorie szkoleń | Egzaminy | Kontakt

Odpowiedź (1)

  • 2

 

Listę możliwych błędów można pobrać z tabeli systemowej sysmessages:

 

SELECT * FROM master.dbo.sysmessages

 

Szczegółowy opis znaczenia poszczególnych kolumn jest tutaj: 

http://msdn.microsoft.com/en-us/library/ms187382.aspx

 

Opis błędów można również znaleźć w dokumentacji na MSDN:

http://msdn.microsoft.com/en-us/library/cc645603.aspx

 

Przykład obsługi błędów w przypadku C# i Entity Framework:

 

  			
		try
                {
                    context.SaveChanges();
                }
                catch (DbUpdateException dbUpdateException)
                {

                    var sqlException = dbUpdateException.GetBaseException() as SqlException;
                    
                    if (sqlException != null)
                    {
                        // Foreign Key violation
                        switch (sqlException.Number)
                        {
			        case 547: // Foreign Key violation
                	              throw new InvalidOperationException("Some helpful description", ex);
                	  break;
            				
				case 2601: // Primary key violation
			                throw new DuplicateRecordException("Some other helpful description", ex);
            			    break;
		
 default : throw sqlException; break;
                        }
                        
                    }
                    else 
                    {
                        throw dbUpdateException;
                    }
                }

 

  • Odpowiedział
  • @ | 13.10.2014
  • TRENER ALTKOM AKADEMII