У меня есть ограничения по поводу валютного поля, что отрицательное значение неприемлемо. Ограничения все работают нормально, и я получаю ошибку, когда ограничения нарушаются согласно ниже.
Не удалось обновить строку. Причина: инструкция UPDATE противоречила ограничению CHECK "CK_Product_StandardCost". Конфликт произошел в базе данных "AdventureWorksLT", в таблице "SalesLT.Product", в столбце "StandardCost". Заявление было прекращено.
Я получаю эту ошибку в блоке catch, потому что я обновляю неверные данные в таблице.
Я хочу получить имя столбца, в частности, это ограничение срабатывает. Здесь это будет: StandardCost. Есть ли способ найти имя столбца в моем коде С#?
Простая Substring
с IndexOf
для сообщения об исключении:
var message = ex.Message;
var column = message.Substring(message.IndexOf("column '") + 8, message.IndexOf("'", message.IndexOf("column '") + 9) - message.IndexOf("column '") - 8);