ASP.NET - mostar contenido ftp en un list box

 
Vista:

mostar contenido ftp en un list box

Publicado por arcenett (45 intervenciones) el 22/05/2007 18:43:12
hola a todos, tengo la siguiente duda....

tengo un webform , en el tengo 4 listbox , y un boton siguiente por cada listbox.

en el formload lleno el primer listbox con los directorios que estan en un ftp (" ftp://ftp.xxxxx.cl/"), el usuario debe seleccionar algun directorio para poder dar click a siguiente, al hacer esto (dar click al boton siguiente) dentro del codigo Button1_Click conecto otra vez a la ftp y dejo en una variable String el ListBox1.SelectedItem.ToString(), este string lo concateno a la direccion original para poder entrrar directamente a ese directorio, lo que pasa es que al momento de reconectar con el ftp osea "ftp://ftp.xxxx.cl/" +String+"/" me debe cargar el segundo listbox con los directorios que ahi se encuentren pero no lo hace, estoy ocupando el mismo codigo ke utilizo cuando se carga el primer listbox.

aca dejo el codigo:

public String ftp1;
public ArrayList array1 = new ArrayList();
public ArrayList array2 = new ArrayList();
public String Var_sel;

protected void Page_Load(object sender, EventArgs e)
{

String usuario, contraseña;
ftp1 = "ftp://ftp.xxxxxxxx.cl/";
//usuario = Session["usuario"].ToString(); habilitar luego
// contraseña = Session["contraseña"].ToString();

System.Net.FtpWebRequest request = (FtpWebRequest)WebRequest.Create(ftp1);
request.UsePassive = false;
request.Method = WebRequestMethods.Ftp.ListDirectory;

request.Credentials = new NetworkCredential("xxxxxx", "xxxxxx");

FtpWebResponse responsex = (FtpWebResponse)request.GetResponse();

Stream responseStream = responsex.GetResponseStream();
StreamReader reader = new StreamReader(responseStream);
int x = 0;
String res;



while ((res = reader.ReadLine()) != null)
{
x = x + 1;
array1.Add(res);

}


Response.Write("</table>");
Response.Write("</br>");

if (!Page.IsPostBack)
{
for (int y = 0; y < x; y++)
{

ListBox1.Items.Add((array1[y].ToString()));
//ListBox2.Items.Add((array1[y].ToString()));
//ListBox3.Items.Add((array1[y].ToString()));
//ListBox4.Items.Add((array1[y].ToString()));

}

}

reader.Close();
responsex.Close();
ListBox1.Items[0].Selected = true;

}

protected void Button1_Click(object sender, EventArgs e)
{
String usuario, contraseña;
String list1;

//usuario = Session["usuario"].ToString(); habilitar luego
// contraseña = Session["contraseña"].ToString();
Label6.Visible = true;
list1 = ListBox1.SelectedItem.ToString()+"/";
Label6.Text = ftp1+list1;

System.Net.FtpWebRequest request = (FtpWebRequest)WebRequest.Create(ftp1+list1);
request.UsePassive = false;
request.Method = WebRequestMethods.Ftp.ListDirectory;

request.Credentials = new NetworkCredential("xxxxx", "xxxxx");

FtpWebResponse responsex = (FtpWebResponse)request.GetResponse();

Stream responseStream = responsex.GetResponseStream();
StreamReader reader = new StreamReader(responseStream);
int x = 0;
String res;


while ((res = reader.ReadLine()) != null)
{
x = x + 1;
array2.Add(res);

}


Response.Write("</table>");
Response.Write("</br>");

if (!Page.IsPostBack)
{
for (int y = 0; y < x; y++)
{
ListBox2.Items.Add((array2[y].ToString()));
}

}

reader.Close();
responsex.Close();

ListBox2.Visible = true;
// ListBox2.Items[0].Selected = true;
ListBox1.Enabled = false;
Button2.Visible = true;
Label2.Visible = true;
}
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

RE:mostar contenido ftp en un list box

Publicado por arcenett (45 intervenciones) el 22/05/2007 22:23:36
ya sabia yo ke era un error chungo........jajaja tenia un if (!Page.IsPostBack) el cual nome dejaba llenar el listbox.....jejeje bueno de todas formas el codigo a mas de alguno le servira...jejeje ya chau y gracias foro.......jeje
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