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 originalprotected void Button1_Click(object sender, EventArgs e)
{
cargar.SaveAs(MapPath("Archivo" + cargar.FileName.ToString()));
}
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//Boton Cargar Imagen, abre un cuadro de diálogo y carga la imágen en el picturebox1 (el de la izquierda)
private void button1_Click(object sender, EventArgs e)
{
System.IO.Stream MiStream = null;
OpenFileDialog openFileDialog1 = new OpenFileDialog();
openFileDialog1.InitialDirectory = "C:\\";
openFileDialog1.Filter = "JPG(*.jpg)|*.jpg|PNG(*.png)|*.png|GIF(*.gif)|*.gif|Todos(*.Jpg, *.Png, *.Gif, *.Tiff, *.Jpeg, *.Bmp)|*.Jpg; *.Png; *.Gif; *.Tiff; *.Jpeg; *.Bmp";
openFileDialog1.FilterIndex = 4;
openFileDialog1.RestoreDirectory = true;
if (openFileDialog1.ShowDialog() == DialogResult.OK)
{
try
{
if ((MiStream = openFileDialog1.OpenFile()) != null)
{
using (MiStream)
{
RutaArchivo = openFileDialog1.FileName.ToString();
NombreArchivo = Path.GetFileName(RutaArchivo);
textBox2.Text = NombreArchivo;
string[] partes;
string extension;
partes = NombreArchivo.Split('.');
extension = partes[1];
if (extension.ToLower() == "png")
{
pictureBox1.Image = Image.FromStream(MiStream);
}
else
{
MessageBox.Show("La imágen debe estar en formato png ");
}
}
}
}
catch (Exception ex)
{
MessageBox.Show("Error: No se puede carga la imagen " + ex.Message);
}
}
}
//este boton envía la imágen del picturebox a la base de datos, como datos binarios
private void button2_Click(object sender, EventArgs e)
{
if (textBox1.Text == "")
{
MessageBox.Show("Ingrese un código para la imágen");
}
else
{
string codigo = textBox1.Text;
CadenaCon = "Server=MYSERVER;Database=MYDATABASE;User ID=MYID;Password=MYPASSWORD;Trusted_Connection=False";
con.ConnectionString = CadenaCon;
SqlCommand com = new SqlCommand("insert into IMAGES_SQL (ID,Imagen) values(@codigo,@Pic)", con);
MemoryStream stream = new MemoryStream();
string ext = Path.GetExtension(textBox2.Text).ToLower();
switch (ext)
{
case ".jpg":
this.pictureBox1.Image.Save(stream, ImageFormat.Jpeg);
break;
case ".png":
this.pictureBox1.Image.Save(stream, ImageFormat.Png);
break;
case ".gif":
this.pictureBox1.Image.Save(stream, ImageFormat.Gif);
break;
case ".bmp":
this.pictureBox1.Image.Save(stream, ImageFormat.Bmp);
break;
case ".tif":
this.pictureBox1.Image.Save(stream, ImageFormat.Tiff);
break;
default:
this.pictureBox1.Image.Save(textBox2.Text);
break;
}
byte[] pic = stream.ToArray();
com.Parameters.AddWithValue("@Pic", pic);
com.Parameters.AddWithValue("@codigo", codigo);
try
{
con.Open();
com.ExecuteNonQuery();
}
catch (Exception ex)
{
MessageBox.Show(ex.Message);
}
finally
{
con.Close();
}
}
}
//este boton busca una imágen en la base de datos y la muestra en el picturebox
private void button3_Click(object sender, EventArgs e)
{
if (textBox3.Text == "")
{
MessageBox.Show("Ingresa código de la imágen que desea mostrar");
}
else
{
string codigo = textBox3.Text;
CadenaCon = "Server=MYSERVER;Database=MYDATABASE;User ID=MYID;Password=MYPASSWORD;Trusted_Connection=False";
con.ConnectionString = CadenaCon;
SqlCommand command = new SqlCommand("select Imagen from IMAGES_SQL where ID=@codigo" , con);
command.Parameters.AddWithValue("@codigo", codigo);
SqlDataAdapter dp = new SqlDataAdapter(command);
DataSet ds = new DataSet("MyImages");
byte[] MyData = new byte[0];
dp.Fill(ds, "MyImages");
DataRow myRow;
myRow = ds.Tables["MyImages"].Rows[0];
MyData = (byte[])myRow["Imagen"];
MemoryStream stream = new MemoryStream(MyData);
pictureBox2.Image = Image.FromStream(stream);
}
}
private void button4_Click(object sender, EventArgs e)
{
this.Close();
}
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!!!!