ASP.NET - ERROR :Option Strict On no permite la conversión

 
Vista:

ERROR :Option Strict On no permite la conversión

Publicado por flomy (1 intervención) el 13/08/2008 19:39:27
Buenas Tardes, por favor necesito saber como puedo solucionar el siguiente error :

error BC30512: Option Strict On no permite la conversión implícita de 'Object' en 'Integer'.
Estoy migrando de asp.net 2003 a asp.net 2005 ya le hice modificaciones a mi codigo, actualmente esta asi:
<A HREF='<%# RutaProducto(CType(Container.DataItem, System.Data.DataRowView)("Codigo")) %>' >

Pero me sigue saliendo el mismo error ; necesito que me den opiniones del porque del error.

Muchas Gracias
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
sin imagen de perfil

RE:ERROR :Option Strict On no permite la conversió

Publicado por @vm (196 intervenciones) el 13/08/2008 23:31:09
Quiero entender tu función:

RutaProducto(CType(Container.DataItem, System.Data.DataRowView)("Codigo"))

Tienes un método que se llama RutaProducto que recibe como parámetro que???

Al método RutaProducto le estas enviando como parametro el resultado de

convertir Container.DataItem en System.Data.DataRowView
Parentesis
sintaxis de CType:
CType(Object As Expression, Object Type)

Quedando el resultado de ctype a la izquierda de ("Codigo")

Entonces queda más menos así:
RutaProducto(System.Data.DataRowView("Codigo"))

en donde no creo q es válido esto: System.Data.DataRowView("Codigo")

intenta con algo asi, según tus necesidades:

<A HREF='<%# RutaProducto(CType(Eval("Codigo"), [Tipo de dato que deseas])) %>' >
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:ERROR :Option Strict On no permite la conversió

Publicado por x (445 intervenciones) el 19/08/2008 07:19:45
El DataRowView si permite accesar los elementos (celdas) por medio del nombre (creo hash) de la columna, por lo que DataRowView("nombre_de_campo") devolveria una instancia del objeto System.Object, por lo que (creo) deberia de funcionar asi:

RutaProducto(Convert.ToInt32(CType(Container.DataItem, System.Data.DataRowView)("Codigo")))

... eso si es que el metodo recibe como argumento un entero.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar