Retroceder   Foros del Web > Programación para sitios web > .NET

Respuesta
 
Herramientas Desplegado
Antiguo 28-oct-2004, 18:23   #1 (permalink)
Anerol ha deshabilitado el karma
 
Fecha de Ingreso: octubre-2004
Ubicación: Santiago Chile
Mensajes: 119
Enviar un mensaje por MSN a Anerol
Pregunta Insertar un datarow

Es lo que necesito o no ??

En realidad mi problema es con un dorpdownlist que enlazo a una bd para mostrar contenido, y quiero aplicarle un requeiredfieldvalidator, pero como siempre tiene un contenido no funciona el validator.

Lucxx me decia que le insertara un datarow, pero no se como en verdad, he visto varias cosas pero aun no encuentro la solucion.

Quizas el requiredfieldvalidator tenga alguna opcion que me ayude, no se. plop

A alguien se le ocurre ??
Anerol está desconectado   Responder Citando
Antiguo 29-oct-2004, 10:37   #2 (permalink)
lucxx ha deshabilitado el karma
 
Avatar de lucxx
 
Fecha de Ingreso: noviembre-2003
Ubicación: Madrid
Mensajes: 321
A ver, ya voy con la solucion

Supongamos que tu dataset se llama ds, en el se carga una tabla con 2 campos (nombre y valor). Añadimos un nuevo registro a la tabla con los campos en blanco (notar que en este caso los dos son de tipo string),
y despues obtenemos una vista de la tabla, llamada "datosDrop", la cual ordenamos por el campo "valor" (para que salga primero el campo en blanco)
Código:
 
   Dim miRow as DataRow
   miRow = ds.Tables(0).NewRow()
   miRow("nombre") = ""
   miRow("valor") = ""
   ds.Tables(0).Rows.Add(miRow)
   
   datosDrop = ds.Tables(0).DefaultView
   datosDrop.Sort = "valor"
Después, realizamos el databind del dropDownList a la vista que hemos obtenido:
Código:
 
  ddl_regMes.DataSource = datosDrop
  ddl_regMes.DataTextField = "nombre"
  ddl_regMes.DataValueField = "valor"
  ddl_regMes.DataBind()
y ya está.

PD: para este caso, un dropdownlist que muestra los meses del año (campo nombre-> el nombre del mes, campo valor-> el numero de mes) yo los traigo de un fichero XML, por lo que una solucion mas simple es incluir el campo en blanco en el propio fichero XML:
Código:
 
<?xml version="1.0" encoding="iso-8859-1"?>
<meses>
 <mes>
  <nombre></nombre>
  <valor></valor>
 </mes>
 <mes>
  <nombre>Enero</nombre>
  <valor>1</valor>
 </mes>
 <mes>
  <nombre>Febrero</nombre>
  <valor>2</valor>
 </mes>
 <mes>
  <nombre>Marzo</nombre>
  <valor>3</valor>
 </mes>
 <mes>
  <nombre>Abril</nombre>
  <valor>4</valor>
 </mes>
 <mes>
  <nombre>Mayo</nombre>
  <valor>5</valor>
 </mes>
 <mes>
  <nombre>Junio</nombre>
  <valor>6</valor>
 </mes>
 <mes>
  <nombre>Julio</nombre>
  <valor>7</valor>
 </mes>
 <mes>
  <nombre>Agosto</nombre>
  <valor>8</valor>
 </mes>
 <mes>
  <nombre>Septiembre</nombre>
  <valor>9</valor>
 </mes>
 <mes>
  <nombre>Octubre</nombre>
  <valor>10</valor>
 </mes>
 <mes>
  <nombre>Noviembre</nombre>
  <valor>11</valor>
 </mes>
 <mes>
  <nombre>Diciembre</nombre>
  <valor>12</valor>
 </mes>
</meses>
Como sospecho que me vas a preguntar como traer los datos del archivo XML, adelanto la respuesta:
Código:
 
  Dim datosDrop as new DataView
  Dim ds as new DataSet
  Dim fs as FileStream
  Dim XMLStream as StreamReader
 
  fs = new FileStream(Server.MapPath("../xml/dias.xml"), FileMode.Open, FileAccess.Read)
  XMLStream = new StreamReader(fs)
  ds.ReadXML(XMLStream)
  XMLStream.Close()
  fs.close()
  
  datosDrop = ds.Tables(0).DefaultView
 
  ' Rellenamos el dropDownList
  ddl_regDia.DataSource = datosDrop
  ddl_regDia.DataTextField = "nombre"
  ddl_regDia.DataValueField = "valor"
  ddl_regDia.DataBind()
 
  datosDrop.Dispose()
  ds.Dispose()
Teniendo en cuenta que debes importar los namespaces:
Código:
   
Imports System.Data
Imports System.IO
Espero que esto haya resuelto tus dudas

Salu2
lucxx está desconectado   Responder Citando
Antiguo 29-oct-2004, 11:44   #3 (permalink)
Anerol ha deshabilitado el karma
 
Fecha de Ingreso: octubre-2004
Ubicación: Santiago Chile
Mensajes: 119
Enviar un mensaje por MSN a Anerol
Uyy
esta buena la explicacion
ojala que me resulte
gracias
Anerol está desconectado   Responder Citando
Respuesta

Calificación: Calificación de Tema: 1 votos, 1,00 de promedio.


Herramientas
Desplegado

Normas de Publicación
No puedes crear nuevos temas
No puedes responder temas
No puedes subir archivos adjuntos
No puedes editar tus mensajes

BB code is Activado
Caritas están Activado
[IMG] está Activado
Código HTML está Desactivado


La Zona horaria es GMT -6. Ahora son las 00:30.


Message Board Statistics

LinkBacks Enabled by vBSEO 3.1.0

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96