elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: ¿Eres nuevo? ¿Tienes dudas acerca del funcionamiento de la comunidad? Lee las Reglas Generales


+  Foro de elhacker.net
|-+  Programación
| |-+  Programación General
| | |-+  .NET (C#, VB.NET, ASP) (Moderador: kub0x)
| | | |-+  ¿Visual Studio con errores?
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: ¿Visual Studio con errores?  (Leído 3,258 veces)
zonahurbana

Desconectado Desconectado

Mensajes: 178

RS, JC.


Ver Perfil WWW
¿Visual Studio con errores?
« en: 13 Julio 2015, 08:01 am »

La verdad es que estoy obteniendo un error que no tiene sentido alguno.

VS me indica que no es posible convertir un DataRow en un DataTable... cuando en realidad no sé de dónde obtiene la idea de "DataRow" si nunca he usado dicha clase.


Aquí está el método listar que devuelve un DataTable


Dicho DataTable viene desde mi clase Conexión


He limpiado la solución y vuelto a generar, pero nada.
El programa no se puede ejecutar porque salta dicho error de compilación.

¿A qué podría deberse? ¿Es un fallo del VS?


En línea

Nunca dejar de aprender es importante, más allá del ritmo que se siga ...
Eleкtro
Ex-Staff
*
Desconectado Desconectado

Mensajes: 9.878



Ver Perfil
Re: ¿Visual Studio con errores?
« Respuesta #1 en: 13 Julio 2015, 11:22 am »



¿A qué podría deberse?

No es ningún error de Visual Studio.

ListarPorSector es un objeto de tipo Datatable, pero al utilizar un índice en la colección ( DataTable(índice) ) lo que estás devolviendo/referenciando es un DataRow.

Solución: Elimina el índice, o declara un DataRow en lugar de un DataTable.

Saludos


« Última modificación: 13 Julio 2015, 11:24 am por Eleкtro » En línea



zonahurbana

Desconectado Desconectado

Mensajes: 178

RS, JC.


Ver Perfil WWW
Re: ¿Visual Studio con errores?
« Respuesta #2 en: 13 Julio 2015, 14:59 pm »

No puedo creer que haya olvidado añadir el parámetro correspondiente al método (y que VB haya asumido tal valor como un índice).

En otro lenguaje para acceder al primer elemento se hubiese necesitado escribir algo como lo siguiente: Clase.metodoEstatico()[0]

Muchas gracias.
« Última modificación: 13 Julio 2015, 15:02 pm por zonahurbana » En línea

Nunca dejar de aprender es importante, más allá del ritmo que se siga ...
Eleкtro
Ex-Staff
*
Desconectado Desconectado

Mensajes: 9.878



Ver Perfil
Re: ¿Visual Studio con errores?
« Respuesta #3 en: 13 Julio 2015, 16:20 pm »

No puedo creer que haya olvidado añadir el parámetro correspondiente al método (y que VB haya asumido tal valor como un índice).

La función ListarPorSector no recive ningún parámetro, por ende se asume que la agrupación de parámetros que utilizas () pertenece al objeto devuelto, y no a la firma de la función, pero vamos, que igualmente puedes hacer lo que mencionas de manera opcional si te resulta más familiar:

Código
  1. Dim dr As DataRow = funcion()(0)

Sin embargo, mi recomendación es que utilices siempre que puedas los parámetros nombrados o pass-by-name (named parameters) para evitar confusiones la próxima vez:

Código
  1. Dim dr As DataRow = funcion(index:=0)

PD:
A diferencia de esos otros lenguajes que te refieres, yo lo considero una mejora en VB.Net, por que evita confusiones al escribir agrupaciones de parámetros vacías en ciertas circunstancias, ¿para que obligar a escribirlas, si están vacias?, son inservibles y confusas, parte de código innecesario para la depuración del mismo, se que cuesta olvidar las costumbres, pero piensalo bien xD: ¿realmente es algo positivo a lo que te obligaba la sintaxis de "X" lenguaje?.

Saludos
« Última modificación: 13 Julio 2015, 17:05 pm por Eleкtro » En línea



zonahurbana

Desconectado Desconectado

Mensajes: 178

RS, JC.


Ver Perfil WWW
Re: ¿Visual Studio con errores?
« Respuesta #4 en: 13 Julio 2015, 19:30 pm »

Gracias nuevamente.
Desconocía la característica sobre usar parámetros con nombres.

Lo que sí me parece un poco exagerado de VB es que si tengo una clase Ubicacion no puedo usar el nombre de variable ubicacion.

Tal vez vuelva a publicar si me surge algún error que no sea error a mi parecer :silbar:
Su firma sugiere el uso de GeSHi... ¿está mal si uso imágenes con resaltado de sintaxis?
En línea

Nunca dejar de aprender es importante, más allá del ritmo que se siga ...
engel lex
Moderador Global
***
Desconectado Desconectado

Mensajes: 15.514



Ver Perfil
Re: ¿Visual Studio con errores?
« Respuesta #5 en: 13 Julio 2015, 19:45 pm »

Gracias nuevamente.
Desconocía la característica sobre usar parámetros con nombres.

Lo que sí me parece un poco exagerado de VB es que si tengo una clase Ubicacion no puedo usar el nombre de variable ubicacion.

Tal vez vuelva a publicar si me surge algún error que no sea error a mi parecer :silbar:
Su firma sugiere el uso de GeSHi... ¿está mal si uso imágenes con resaltado de sintaxis?

no, mientras se lea bien, se vale :P

aunque si es un código que los otros podrían copiar para testear y comprobar, si, GeSHi por comodidad
En línea

El problema con la sociedad actualmente radica en que todos creen que tienen el derecho de tener una opinión, y que esa opinión sea validada por todos, cuando lo correcto es que todos tengan derecho a una opinión, siempre y cuando esa opinión pueda ser ignorada, cuestionada, e incluso ser sujeta a burla, particularmente cuando no tiene sentido alguno.
Eleкtro
Ex-Staff
*
Desconectado Desconectado

Mensajes: 9.878



Ver Perfil
Re: ¿Visual Studio con errores?
« Respuesta #6 en: 13 Julio 2015, 20:06 pm »

Tal vez vuelva a publicar si me surge algún error que no sea error a mi parecer :silbar:
Su firma sugiere el uso de GeSHi... ¿está mal si uso imágenes con resaltado de sintaxis?

Lo que te ha comentado el compañero @Engel.

Al utilizar imágenes te privas de una posible ayuda, ya que en códigos de varias lineas nadie va a poder hacer un copy/paste de una imagen para poder testear tú código.

Personalmente prefiero que publiques el código por escrito, pero es algo de libre elección.



Lo que sí me parece un poco exagerado de VB es que si tengo una clase Ubicacion no puedo usar el nombre de variable ubicacion.

Si que puedes hacerlo:

Código
  1. Public Class testclass
  2. End Class

Código
  1. Public Class Form1
  2.  
  3.    Public testclass As testclass
  4.  
  5.    Private Sub method()
  6.        Dim testclass As testclass
  7.    End Sub
  8.  
  9. End Class

¿Por qué dices no poder?, muestra el código.

Saludos
« Última modificación: 13 Julio 2015, 20:26 pm por Eleкtro » En línea



Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
visual studio.net
Programación Visual Basic
lop64 2 1,525 Último mensaje 20 Diciembre 2005, 13:40 pm
por jorge_cs
Crear un istalador en Visual Basic de Visual Studio
Programación Visual Basic
patrick_adrian 2 6,179 Último mensaje 3 Noviembre 2009, 07:43 am
por Tumerek
Problema con Visual Studio 2008, Visual Source Safe 2005.
.NET (C#, VB.NET, ASP)
davidesgt 0 4,971 Último mensaje 14 Octubre 2009, 17:32 pm
por davidesgt
Programacion ¿visual basic o visual studio?
Programación General
Massimo97 3 4,760 Último mensaje 6 Marzo 2012, 22:40 pm
por $Edu$
errores compilacion visual studio 2017
Programación C/C++
fumioli 4 3,050 Último mensaje 19 Enero 2018, 23:25 pm
por fumioli
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines