Любой умный способ исправить "строковые или двоичные данные" будет усечен "с помощью LINQ

Существует ли разумный способ определить, какое поле вызывает "строковые или двоичные данные", с помощью LINQ.

Я всегда делал это вручную, перешагивая через отладчик, но с помощью пакета "SubmitChanges" я должен изменить свой код, чтобы вставить одну строку, чтобы найти виновника в партии строк.

Мне что-то не хватает или в этот день и в возрасте я действительно должен использовать метод грубой силы, чтобы найти проблему.

Пожалуйста, не дайте мне совета по предотвращению этой ошибки в будущем (если только это не будет чем-то гораздо умнее, чем "подтвердить ваши данные" ). Исходные данные поступают из другой системы, в которой у меня нет полного контроля - плюс я хочу быть ленивым.

PS. Действительно ли SQL Server 2008 говорит мне имя поля. Скажите, пожалуйста! Я обновляюсь!

Ответ 1

Запустить SQL-профайлер. Последний запрос из вашего приложения должен быть сбойным.

Ответ 3

Возможно, было бы полезно переустановить/отредактировать этот тег как linq.net

DJ - где вы получаете эти данные, которые публикуете в качестве предлагаемого решения?

Исключение не содержит этой информации, поэтому ваш пост в значительной степени бесполезен - если вы не можете указать источник.

Ответ 4

Предполагая, что вы обрабатываете большую партию записей, и вы не хотите (не можете) проверять данные перед рукой, и вы просто хотите, чтобы ограничения db ломали любые ошибки?

Измените свою программу, чтобы поймать исключение и распечатать текущую информацию о записи в файле журнала или что-то в этом роде.

Record # 9999
Caused "string or binary data would be truncated" error
Field1: "Data" Length: 55
Field2: 9999
etc.