Ver Mensaje Individual
  #20 (permalink)  
Antiguo 09/09/2009, 09:15
Avatar de pyroCL
pyroCL
 
Fecha de Ingreso: marzo-2009
Ubicación: C#
Mensajes: 261
Antigüedad: 15 años, 10 meses
Puntos: 2
Respuesta: Editar un grid view llenado mediante un Data set

Roy_Learningnet:

Hola!

Mira para poder subir un archivo a tu servidor utilizando el FileUpload debes hacer lo siguiente:

En la página insertas un FileUpload y le das el nombre "cargar", luego un boton, que en este caso no le di nombre, "Button1"

En el evento Click del boton haces lo siguiente:

Código C#:
Ver original
  1. protected void Button1_Click(object sender, EventArgs e)
  2. {
  3.      
  4. cargar.SaveAs(MapPath("Archivo" + cargar.FileName.ToString()));
  5. }

Esto guardará el archivo que has seleccionado con el FileUpLoad en tu servidor.

´2°

No sé que tipo de archivo quieres cargar en tu base de datos, me imagino que es una imagen... si es así, la forma de hacerlo es:


Código C#:
Ver original
  1. //Boton Cargar Imagen, abre un cuadro de diálogo y carga la imágen en el picturebox1 (el de la izquierda)
  2.         private void button1_Click(object sender, EventArgs e)
  3.         {
  4.             System.IO.Stream MiStream = null;
  5.             OpenFileDialog openFileDialog1 = new OpenFileDialog();
  6.  
  7.             openFileDialog1.InitialDirectory = "C:\\";
  8.             openFileDialog1.Filter = "JPG(*.jpg)|*.jpg|PNG(*.png)|*.png|GIF(*.gif)|*.gif|Todos(*.Jpg, *.Png, *.Gif, *.Tiff, *.Jpeg, *.Bmp)|*.Jpg; *.Png; *.Gif; *.Tiff; *.Jpeg; *.Bmp";
  9.             openFileDialog1.FilterIndex = 4;
  10.             openFileDialog1.RestoreDirectory = true;
  11.  
  12.             if (openFileDialog1.ShowDialog() == DialogResult.OK)
  13.             {
  14.                 try
  15.                 {
  16.                     if ((MiStream = openFileDialog1.OpenFile()) != null)
  17.                     {
  18.                         using (MiStream)
  19.                         {
  20.                            
  21.                             RutaArchivo = openFileDialog1.FileName.ToString();
  22.                             NombreArchivo = Path.GetFileName(RutaArchivo);
  23.                             textBox2.Text = NombreArchivo;
  24.                             string[] partes;
  25.                             string extension;
  26.                             partes = NombreArchivo.Split('.');
  27.                             extension = partes[1];
  28.  
  29.                             if (extension.ToLower() == "png")
  30.                             {
  31.                                 pictureBox1.Image = Image.FromStream(MiStream);
  32.                             }
  33.                             else
  34.                             {
  35.                                 MessageBox.Show("La imágen debe estar en formato png ");
  36.                             }
  37.                            
  38.                         }
  39.                     }
  40.                 }
  41.                 catch (Exception ex)
  42.                 {
  43.                     MessageBox.Show("Error: No se puede carga la imagen " + ex.Message);
  44.                 }
  45.             }
  46.         }
  47.  
  48. //este boton envía la imágen del picturebox a la base de datos, como datos binarios
  49.         private void button2_Click(object sender, EventArgs e)
  50.         {
  51.             if (textBox1.Text == "")
  52.             {
  53.                 MessageBox.Show("Ingrese un código para la imágen");
  54.             }
  55.             else
  56.             {
  57.  
  58.                 string codigo = textBox1.Text;
  59.                 CadenaCon = "Server=MYSERVER;Database=MYDATABASE;User ID=MYID;Password=MYPASSWORD;Trusted_Connection=False";
  60.                 con.ConnectionString = CadenaCon;
  61.                 SqlCommand com = new SqlCommand("insert into IMAGES_SQL (ID,Imagen) values(@codigo,@Pic)", con);
  62.                 MemoryStream stream = new MemoryStream();
  63.                 string ext = Path.GetExtension(textBox2.Text).ToLower();
  64.                 switch (ext)
  65.                 {
  66.                     case ".jpg":
  67.                         this.pictureBox1.Image.Save(stream, ImageFormat.Jpeg);
  68.                         break;
  69.                     case ".png":
  70.                         this.pictureBox1.Image.Save(stream, ImageFormat.Png);
  71.                         break;
  72.                     case ".gif":
  73.                         this.pictureBox1.Image.Save(stream, ImageFormat.Gif);
  74.                         break;
  75.                     case ".bmp":
  76.                         this.pictureBox1.Image.Save(stream, ImageFormat.Bmp);
  77.                         break;
  78.                     case ".tif":
  79.                         this.pictureBox1.Image.Save(stream, ImageFormat.Tiff);
  80.                         break;
  81.                     default:
  82.                         this.pictureBox1.Image.Save(textBox2.Text);
  83.                         break;
  84.                 }
  85.  
  86.                 byte[] pic = stream.ToArray();
  87.  
  88.                 com.Parameters.AddWithValue("@Pic", pic);
  89.                 com.Parameters.AddWithValue("@codigo", codigo);
  90.                 try
  91.                 {
  92.                     con.Open();
  93.  
  94.                     com.ExecuteNonQuery();
  95.                 }
  96.                 catch (Exception ex)
  97.                 {
  98.                     MessageBox.Show(ex.Message);
  99.                 }
  100.                 finally
  101.                 {
  102.                     con.Close();
  103.                  
  104.                 }
  105.             }
  106.         }
  107.  
  108.         //este boton busca una imágen en la base de datos y la muestra en el picturebox
  109.         private void button3_Click(object sender, EventArgs e)
  110.         {
  111.             if (textBox3.Text == "")
  112.             {
  113.                 MessageBox.Show("Ingresa código de la imágen que desea mostrar");
  114.             }
  115.             else
  116.             {
  117.                 string codigo = textBox3.Text;
  118.                 CadenaCon = "Server=MYSERVER;Database=MYDATABASE;User ID=MYID;Password=MYPASSWORD;Trusted_Connection=False";
  119.                 con.ConnectionString = CadenaCon;
  120.                 SqlCommand command = new SqlCommand("select Imagen from IMAGES_SQL where ID=@codigo" , con);
  121.                 command.Parameters.AddWithValue("@codigo", codigo);
  122.                 SqlDataAdapter dp = new SqlDataAdapter(command);
  123.                 DataSet ds = new DataSet("MyImages");
  124.                 byte[] MyData = new byte[0];
  125.                 dp.Fill(ds, "MyImages");
  126.                 DataRow myRow;
  127.                 myRow = ds.Tables["MyImages"].Rows[0];
  128.                 MyData = (byte[])myRow["Imagen"];
  129.                 MemoryStream stream = new MemoryStream(MyData);
  130.                 pictureBox2.Image = Image.FromStream(stream);
  131.             }
  132.         }
  133.  
  134.         private void button4_Click(object sender, EventArgs e)
  135.         {
  136.             this.Close();
  137.         }
Este codigo está hecho en un Winform, ahí tu lo cambias a webform...

par aque veas como esta hecho el winform, aqui una direccion a la imagen



Cualquier duda sólo consulta.
Saludos!!!!
__________________
La verdadera sabiduría está en reconocer la propia ignorancia.

Última edición por pyroCL; 09/09/2009 a las 09:33