Comunidad de desarrolladores de Puebla.NET
Iniciar sesión Unete ahora
 
 
Novedades | Anuncios | Eventos | Publicaciones | Foros | Bolsa de trabajo | Conocenos | Encuestas
 
  Buscar  
Novedades > Foros > CSharp    
 
Anónimo
3179409 visitas desde Octubre de 2004
2 usuarios en línea
Contáctanos en línea:





Certificate Veracruz

Revista MTJ .NET


 
Visual C#

Autor Discusión: Cast Linq error
micromatica
Cast Linq error
Enviado: Friday, September 04, 2009 10:25 AM (UMST)

Buenas tardes

Tengo una consulta con linq (esta no es pues son otros conceptos pero es más claro este ejemplo), funciona bien y cargo los datos aun DataGrid pero el problema se presenta en los campos "Sueldo" y "Comision".

Este último "Comisión" su typo en la BD es float, la propiedad es float pero únicamente con "Double" en la consulta se realizó bien (resuelto)

El error que no resuelvo es "Sueldo", su typo en la BD es money, ya hice todos los cambios poniendo double, decimal, float en la consulta y en la propiedad y sigue dando el error

 

El error que indica es InvalidCastException, Aquí esta la consulta, ¿tendrán alguna sugerencia?

 

var empleado =

 from p in tablaEmpleados.AsEnumerable()
          select new personal
          {  empleadoID = p.Field<String>("cEmpleadoID"),  // OK
              nombre = p.Field<String>("cNombre"),             // OK
              sueldo = p.Field<Double>("cPrecio"),               // cPrecio - money,  ERROR
               comision = p.Field<Double>("cComision")     // cComision - float, solo con Double OK
            };

this.DataContext = gruposPerfil;

 

GRACIAS


Comentarios:

Author Tema:
MSM-DotNet
Cast Linq error
Enviado: Friday, September 04, 2009 5:32 PM (UMST)
Una pregunta, tu campo cPrecio acepta null? si es asi entonces el tipo que debes especificar debe ser un tipo nullable.

micromatica
Cast Linq error
Enviado: Friday, September 04, 2009 7:18 PM (UMST)

Gracias por contestar.

 

El campo cPrecio no acepta valores nulos, pues está definido desde la creación de la tabla, y ya revisé que no exista algún dato extraño en este campo y todo esta bien.

 

Saludos

MSM-DotNet
Cast Linq error
Enviado: Friday, September 04, 2009 8:22 PM (UMST)
Toma al campo money como decimal.

micromatica
Cast Linq error
Enviado: Saturday, September 05, 2009 9:02 AM (UMST)

Ya quedó, que pasó ¿quien sabe? pues ya había tomado el dato money como decimal y seguía marcando error.

 

Pero ya funcionó.

 

Gracias

 

Aprovechando, ¿Se puede meter un dataGrid (master) dentro de otro dataGrid (detalles) utilizando RowDetailsTemplate, pero con datos de dos tablas diferentes y un campo en común?

 

Probé los ejemplos ideales que hay en Internet para mostrar los detalles en RowDetailsTemplate con TextBlock y TextBox de una sola tabla y no hay problema.

MSM-DotNet
Cast Linq error
Enviado: Saturday, September 05, 2009 5:32 PM (UMST)
Yo creo que si se puede