Giả sử bạn đang sử dụng SQL Server.
Sử dụng kho lưu trữ web teh - https://web.archive.org/web/20190120182351/https://blogs.msdn.microsoft.com/tomholl/2007/08/01/mapping-sql-server-errors-to-net -exceptions-the-fun-way /
try
{
# SQL Stuff
}
catch (SqlException ex)
{
if (ex.Errors.Count > 0) // Assume the interesting stuff is in the first error
{
switch (ex.Errors[0].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 new DataAccessException(ex);
}
}
}
Trường hợp 547 là người đàn ông của bạn.
CẬP NHẬT Trên đây là mã mẫu và không nên sử dụng. Vui lòng theo liên kết để giải thích lý do.