tengo un while dentro de un for y el while se ejecuta solo una ves D:
y no se porque.
Código:
el problema esta aqui:Sub RecuperarChecks(ByVal strNameSesion As String) 'aqui recuperare los checks Dim strConReqkuperarCks As String Dim conRekuperarChecks As SqlConnection Dim strSelectCheks As String Dim comSelectCheks As SqlCommand Dim dtrCheks As SqlDataReader ' Dim strCheks As String Dim itmZona As ListItem If IsPostBack Then 'variables de conexion Dim strConAdLicencia As String Dim conAdLicencia As SqlConnection Dim cmdSelect As SqlCommand Dim dtrTitles As SqlDataReader 'conexion con la bd de zonas strConAdLicencia = System.Configuration.ConfigurationManager.AppSettings("conLicencia") 'para conectar co la bd conAdLicencia = New SqlConnection(strConAdLicencia) 'ago coneccion con la bd cmdSelect = New SqlCommand("Select * From Zona", conAdLicencia) 'conxion con la bd de permisos strConReqkuperarCks = System.Configuration.ConfigurationManager.AppSettings("conSesion") 'para conectar co la bd conRekuperarChecks = New SqlConnection(strConReqkuperarCks) 'ago coneccion con la bd strSelectCheks = "Select idArray From Permisos Where idSesion = @usuario" comSelectCheks = New SqlCommand(strSelectCheks, conRekuperarChecks) comSelectCheks.Parameters.AddWithValue("@usuario", Session("strUsuario")) 'conxiones abiertas conAdLicencia.Open() conRekuperarChecks.Open() dtrTitles = cmdSelect.ExecuteReader() chkListaZona.DataSource = dtrTitles chkListaZona.DataTextField = "Zona" 'asigna el texto de la bd chkListaZona.DataValueField = "idZona" 'aigna el value de la bd chkListaZona.DataBind() 'muestra los chek box dtrCheks = comSelectCheks.ExecuteReader() For Each itmZona In chkListaZona.Items Response.Write(" <li> ") Response.Write(itmZona.Text) Response.Write(" ") Response.Write(itmZona.Value) Response.Write("</ br>") While dtrCheks.Read Response.Write(" <li> ") Response.Write(dtrCheks("idArray")) Response.Write("</ br>") End While Next conRekuperarChecks.Close() dtrTitles.Close() conAdLicencia.Close() Label4.Text = "si entra al if" Else Label4.Text = "no entra al if" End If End Sub
For Each itmZona In chkListaZona.Items
Response.Write(" <li> ")
Response.Write(itmZona.Text)
Response.Write(" ")
Response.Write(itmZona.Value)
Response.Write("</ br>")
While dtrCheks.Read
Response.Write(" <li> ")
Response.Write(dtrCheks("idArray"))
Response.Write("</ br>")
End While
Next
el resultado de esto es :
rojo 2
2
3
azul 3
verde 4
y lo que debe mostrar es:
rojo 2
2
3
azul 3
2
3
verde 4
2
3
pero no entiendo orque no ocurre eso ._.
Pregunta para el mod: como se hace para que el tag del codigo quede en colores como el tag de php?