2008-11-20 14 views
10

¿Existe alguna manera inteligente de determinar qué campo está causando que 'cadena o datos binarios se trunquen' con LINQ.Cualquier forma inteligente de corregir la advertencia 'cadena o datos binarios se truncarán' con LINQ

Siempre he terminado haciéndolo manualmente pasando por un depurador, pero con un lote usando 'SubmitChanges' tengo que cambiar mi código para insertar una sola fila y encontrar el culpable en un lote de filas.

Me falta algo o en este día y edad realmente tengo que seguir usando un método de fuerza bruta para encontrar el problema.

Por favor, no me aconsejen evitar este error en el futuro (a menos que sea algo mucho más inteligente que 'validar sus datos'). Los datos de origen provienen de un sistema diferente donde, de todos modos, no tengo control total, además de que quiero ser flojo.

PS. ¿SQL Server 2008 realmente me dice el nombre del campo? Por favor dime que si! Voy a actualizar!

+0

simplemente por diversión: resultó ser el nombre de una compañía de 'Embajada de la República Dominicana en los Estados Unidos' tratando de encajar en un campo de nombre de compañía de 50 caracteres –

+3

Bueno, ¿cómo lo encontraron? – DenNukem

+0

Parece que esto no funciona para el marco entidad. Espero que lo solucionen pronto. –

Respuesta

-1

Suponiendo que está procesando un gran lote de registros y no desea (no puede) validar los datos de antemano y solo quiere que las restricciones db capten los errores?

Cambie su programa para detectar la excepción e imprimir los detalles del registro actual en un archivo de registro o algo así.

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

Enciende el Analizador de SQL. La última consulta de su aplicación debe ser la que está fallando.

0

Probablemente sería útil para volver a publicar/editar esta etiquetada como .net linq

DJ - donde está usted recibiendo estos datos que publique como solución propuesta?

La excepción no contiene esta información, por lo que su publicación es prácticamente inútil, a menos que pueda especificar el origen.

Cuestiones relacionadas