Вы можете написать свой ожидаемый код исключения в блоке Try, если будет сгенерировано какое-либо исключение, оно будет перехвачено далее, теперь вы можете получить номер ошибки. Теперь мы можем проверить, является ли нарушение внешнего ключа или нет
try
{
//your deletetion code
}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
lblError.Text = "Cannot Delete this Record this is associated with other record...!";
break;
default:
throw;
}
}
}