У мене є шматок коду спроби лову:
try
{
...
}
catch(Exception ex)
{
ModelState.AddModelError(
"duplicateInvoiceNumberOrganisation", "The combination of organisation and invoice number must be unique");
}
Для цього фрагмента коду я намагаюся вставити запис у базу даних: dba встановив його таким чином, що база даних перевіряє наявність дублікатів і повертає помилку, якщо є дублікати. На даний момент, як бачите, я додаю ту саму помилку до моделі незалежно від того, яка помилка сталася. Я хочу, щоб його змінили, тому ця помилка додається до моделі лише в тому випадку, якщо вона була спричинена повторюваною помилкою, встановленою в базі даних.
Нижче наведена помилка, яку я хочу вловити. Зверніть увагу, що це у внутрішньому винятку. Хтось може сказати мені, як конкретно зловити цього?

Exceptionне найкращу практику. Ви повинні бути якомога конкретнішими і дозволяти всім, з чим не впораєтесь, міхур до користувача / середовища.