2010-10-27 20 views
6

He generado clases LINQ a SQL desde una base de datos que no está bajo mi control, que tiene muchos campos Decimal(38, 5). Al parecer, el rango del tipo de .NET decimal es menor que este, por lo que el LINQ al generador de código SQL es tirar un montón de advertencias:Suprimir las advertencias DBML de LINQ a SQL

DBML1008: Correspondencia entre DbType 'decimal (38,5)' y tipo ' System.Decimal' en la columna 'StructGable24InchOCStuds' del tipo 'AddersAndMultiplier' puede causar la pérdida de datos cuando se carga de la base de datos

es muy poco probable que cualquiera de estos campos tendrá siempre un valor lo suficientemente grande como para causar la pérdida de datos en la práctica así que me gustaría suprimir estas advertencias. Sin embargo, al parecer, configurar la supresión de advertencia a través del diálogo en VS no funciona con las advertencias del generador de códigos LINQ to SQL. ¿Hay algún otro método?

Respuesta

3

No estoy seguro de cómo suprimir la advertencia, pero como tengo el control del procedimiento almacenado que causaba el problema en mi sistema, lanzo el valor de retorno a un decimal menor que eliminó la advertencia.

SELECT CAST(SUM(AdFee) AS DECIMAL(19, 3)) 
Cuestiones relacionadas