Foros del Web » Programación para mayores de 30 ;) » .NET »

Acceder a esta tabla.

Estas en el tema de Acceder a esta tabla. en el foro de .NET en Foros del Web. Quiero hacer una consulta dataset a un archivo xml, el problema es que no se implementar la consulta con el dataset, pongo un ejemplo Tengo ...
  #1 (permalink)  
Antiguo 05/03/2009, 07:02
 
Fecha de Ingreso: enero-2009
Mensajes: 56
Antigüedad: 15 años, 3 meses
Puntos: 0
Acceder a esta tabla.

Quiero hacer una consulta dataset a un archivo xml, el problema es que no se implementar la consulta con el dataset, pongo un ejemplo

Tengo este xml llamado xxx.xml

Código:
<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet type="text/xsl" href="/layout/character-sheet.xsl"?><page globalSearch="1" lang="es_es" requestUrl="/character-sheet.xml">
  <characterInfo>
    <character battleGroup="xxx" charUrl="r=xxx&amp;n=xxxx">
      
    </character>
    <characterTab>
     <items>
        <item durability="53" gem0Id="41395"/>
        <item durability="0" gem0Id="0"/>
     </items>
    </characterTab>
  </characterInfo>
</page>

ahora genero codigo
quiero conseguir leer dentro del xml de arriba lo que esta azul

Dim datos as integer
Dim ds As New DataSet
ds.ReadXml(Server.MapPath("xx/xxx.xml"))
datos = ds.Tables(x).Row(X)(x) <- Esto es lo que no se hacer para llegar a leer lo que esta azul.
  #2 (permalink)  
Antiguo 05/03/2009, 14:52
 
Fecha de Ingreso: enero-2009
Mensajes: 56
Antigüedad: 15 años, 3 meses
Puntos: 0
Respuesta: Acceder a esta tabla.

Nadie sabe como hacer la consulta???
  #3 (permalink)  
Antiguo 05/03/2009, 16:05
Avatar de eledgarr  
Fecha de Ingreso: octubre-2008
Ubicación: La ciudad de la esperanza
Mensajes: 133
Antigüedad: 15 años, 6 meses
Puntos: 3
Respuesta: Acceder a esta tabla.

Te dejo parte de mi codigo espero te sirva y ojala pudieras ayudarme con una pregunta que tengo mas o menos 2 abajo de la tuya



ds.Tables(x).Row(X).Item(columna).ToString




With Go_DataSet.Tables.Item("Asignadas")
For iDato1 = 0 To .Rows.Count - 1
For iDato2 = 0 To .Columns.Count - 1
GoCbo = Me.Controls(1)
If .Columns(iDato2).ColumnName = "Clave" Then
If .TableName = "Asignadas" And GoCbo.SelectedIndex = .Rows(iDato1).Item(iDato2).ToString Then
GoCbo = Me.Controls(5)
GoCbo.Items.Insert(0, .Rows(iDato1).Item("Nombre").ToString)
GoCbo.Text = .Rows(iDato1).Item("Nombre").ToString
Me.Controls(8).Text = .Rows(iDato1).Item("Ajuste_X").ToString
Me.Controls(10).Text = .Rows(iDato1).Item("Ajuste_Y").ToString
Me.Controls(12).Text = .Rows(iDato1).Item("Copias").ToString
GoChk.Checked = True
MiTx = 3
streamRead.Close()
Exit Select
Else
MiTx = 1
GoChk.Checked = True
End If
End If
Next iDato2
Next iDato1
End With
  #4 (permalink)  
Antiguo 06/03/2009, 19:19
Avatar de eledgarr  
Fecha de Ingreso: octubre-2008
Ubicación: La ciudad de la esperanza
Mensajes: 133
Antigüedad: 15 años, 6 meses
Puntos: 3
Respuesta: Acceder a esta tabla.

de nada.....
  #5 (permalink)  
Antiguo 09/03/2009, 03:45
 
Fecha de Ingreso: enero-2009
Mensajes: 56
Antigüedad: 15 años, 3 meses
Puntos: 0
Respuesta: Acceder a esta tabla.

Perdon por no responderte antes pero no pude ver esto asta hoy, muchisimas gracias por contestarme y espero que me solucione el problema.
  #6 (permalink)  
Antiguo 09/03/2009, 04:20
 
Fecha de Ingreso: enero-2009
Mensajes: 56
Antigüedad: 15 años, 3 meses
Puntos: 0
Respuesta: Acceder a esta tabla.

Weno el problemas es que no entiende el esquema del xml, al intentar leer el esquema o al intentar tan solo abrir el xml me salta este error:

La tabla (arenaTeams) no puede ser la tabla secundaria de sí misma en relaciones anidadas.

Para empezar quiero saber como poder leer la tabla sin que me de ese error.

Última edición por tallara; 09/03/2009 a las 05:09
  #7 (permalink)  
Antiguo 09/03/2009, 12:37
Avatar de eledgarr  
Fecha de Ingreso: octubre-2008
Ubicación: La ciudad de la esperanza
Mensajes: 133
Antigüedad: 15 años, 6 meses
Puntos: 3
Respuesta: Acceder a esta tabla.

prueba asi

Dim datos as integer
Dim ds As New DataSet
Dim streamRead As New System.Xml.XmlTextReader("ruta del xml")
ds.ReadXml(streamRead)
datos = ds.Tables(x)..Rows(x).Item("nombre o indice de columna").ToString


pero te recomiendo que datos sea de tipo string y si lo utilizas en alguna operación despues
lo uses asi cint(datos)
  #8 (permalink)  
Antiguo 09/03/2009, 19:08
 
Fecha de Ingreso: enero-2009
Mensajes: 56
Antigüedad: 15 años, 3 meses
Puntos: 0
Respuesta: Acceder a esta tabla.

Muchas gracias lo probare tan pronto pueda y te cuento.
  #9 (permalink)  
Antiguo 10/03/2009, 01:50
 
Fecha de Ingreso: enero-2009
Mensajes: 56
Antigüedad: 15 años, 3 meses
Puntos: 0
Respuesta: Acceder a esta tabla.

Pues me sigue poniendo

La tabla (arenaTeams) no puede ser la tabla secundaria de sí misma en relaciones anidadas.

Es un problema de que el xml esta bien formado pero el contenido de datos no se puede mostar

Fijate como empieza el xml:

Código:
<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet type="text/xsl" href="/layout/character-sheet.xsl"?><page globalSearch="1" lang="es_es" requestUrl="/character-sheet.xml">
  <characterInfo>
    <character battleGroup="Crueldad" charUrl="r=Uldum&amp;n=Tallara" class="Mago" classId="8" faction="Horda" factionId="1" gender="Masculino" genderId="0" guildName="Hellraiser" guildUrl="r=Uldum&amp;n=Hellraiser&amp;p=1" lastModified="4 de marzo de 2009" level="80" name="Tallara" points="3215" prefix="" race="No muerto" raceId="5" realm="Uldum" suffix=", Campeón de los baldíos helados">
      <arenaTeams>
        <arenaTeam battleGroup="Crueldad" created="1235520000000" faction="Horda" factionId="1" gamesPlayed="0" gamesWon="0" lastSeasonRanking="0" name="IronMaiden" ranking="8730" rating="1072" realm="Uldum" realmUrl="b=Crueldad&amp;r=Uldum&amp;ts=2&amp;t=IronMaiden&amp;ff=realm&amp;fv=Uldum&amp;select=IronMaiden" seasonGamesPlayed="26" seasonGamesWon="7" size="2" url="r=Uldum&amp;ts=2&amp;t=IronMaiden&amp;select=IronMaiden">
Si ves me pone que el error es que la tabla arenasteams no puede ser secundaria de si misma.

a mi me da igual como si leo el xml mediante dataset o como texto plano lo que necesito es quitar datos de el de la forma que sea, e intentado usar el richtextbox.find pero en asp.net no existe el richtextbox, me puedes dar alguna idea para poder sacar datos?.
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 17:50.