Foros del Web » Programación para mayores de 30 ;) » .NET »

Limitar Tamaño Archivo en Upload

Estas en el tema de Limitar Tamaño Archivo en Upload en el foro de .NET en Foros del Web. Hola a todos ... como puedo hacer para limitar "dinamicamente" el tamaño de archivos que pueden cargar los usuarios al servidor. a detalle lo que ...
  #1 (permalink)  
Antiguo 26/08/2004, 10:56
 
Fecha de Ingreso: diciembre-2003
Mensajes: 69
Antigüedad: 20 años, 4 meses
Puntos: 0
Pregunta Limitar Tamaño Archivo en Upload

Hola a todos ...

como puedo hacer para limitar "dinamicamente" el tamaño de archivos que pueden cargar los usuarios al servidor.

a detalle lo que quiero hacer es..

estamos migrando una aplicacion a .Net, tengo una tabla usuarios en la que especifico el tamaño de archivo por usuario, uno puede cargar archivos de 2M, otro de 10M.. y asi, dependiendo del usuario es el tamaño de archivo que se le permitira cargar, consulto la tabla, obtengo el tamaño en megas, pero como le digo al INPUT de Tipo File el tamaño correcto que debe permitir cargar


Gracias de antemano....
  #2 (permalink)  
Antiguo 26/08/2004, 11:36
Avatar de RootK
Moderador
 
Fecha de Ingreso: febrero-2002
Ubicación: México D.F
Mensajes: 8.004
Antigüedad: 22 años, 2 meses
Puntos: 50
Eso lo puedes indicar en el web.config.

Ejemplo:

Cita:
<system.web>
...
<httpRuntime executionTimeout="900" useFullyQualifiedRedirectUrl="true" maxRequestLength="8096"/>
...
..
</system.web>
Salu2
__________________
Nadie roba nada ya que en la vida todo se paga . . .

Exentrit - Soluciones SharePoint & Net
  #3 (permalink)  
Antiguo 27/08/2004, 11:30
 
Fecha de Ingreso: diciembre-2003
Mensajes: 69
Antigüedad: 20 años, 4 meses
Puntos: 0
ok. entiendo la idea pero no es en esa parte, esa ya la tengo entendida, es para cada usuario que se conecta mi sitio mas que nada para el componente file...


gracias
  #4 (permalink)  
Antiguo 21/01/2010, 16:33
 
Fecha de Ingreso: enero-2010
Ubicación: Colombia
Mensajes: 6
Antigüedad: 14 años, 3 meses
Puntos: 0
Respuesta: Limitar Tamaño Archivo en Upload

Código C# Code:
Ver original
  1. public bool subir_archivo(HttpPostedFile archivo, string strNombre)
  2.         {
  3.             try
  4.             {
  5.                 int tamanoarchivo;
  6.                 byte[] datos;
  7.  
  8.  
  9.                 //Si no se especificó un archivo
  10.                 //fileuploader.FileName
  11.                 if (archivo == null)
  12.                 {
  13.                     //Mensaje en la master que no hay seleccionado un archivo
  14.  
  15.                     return false;
  16.  
  17.                 }
  18.  
  19.                 //Comprobar que sea una Imagen
  20.  
  21.                 //if (archivo.ContentType.IndexOf("image") != 0)
  22.                 //{
  23.                 //    //En la master (El archivo no es una imagen
  24.                 //    return false;
  25.                 //}
  26.  
  27.                 //Comprobar que no sea muy grande
  28.  
  29.                 tamanoarchivo = archivo.ContentLength;
  30.                 if (tamanoarchivo > 500000)
  31.                 {
  32.                     objMaster.fn_mensaje("El tamaño maximo permitido por archivo es de " + Convert.ToString(500000 / 1000) + " kb", false);
  33.                     return false;
  34.                 }
  35.  
  36.                 //llenamos los datos de la imagen
  37.                 datos = new byte[tamanoarchivo];
  38.  
  39.                 //se llena la coleccion de bytes con el stream del archivo.
  40.                 archivo.InputStream.Read(datos, 0, tamanoarchivo);
  41.  
  42.                 //Obtenemos la extencion del archivo.
  43.                 string strExtencion = Path.GetExtension(archivo.FileName);
  44.  
  45.                 //Admitidos PNG
  46.                 // (strExtencion.ToLower() != ".png")
  47.                // {
  48.                     //Solo se permiten imagenes con extencion .png
  49.                    // return false;
  50.                // }
  51.  
  52.                 //se asigna un nombre a la imagen como va a ser guardada en el servidor
  53.  
  54.                 strNombre = strNombre + strExtencion;
  55.  
  56.                 //Path donde se va a guardar la imagen
  57.                 string strPath = Server.MapPath(@"Datos\Adjuntos\" + strNombre);
  58.  
  59.                 //Se dimenciona el stream encargado de hacer el guardado
  60.                 FileStream objArchivo = new FileStream(strPath, FileMode.Create);
  61.  
  62.                 //Se guarda la imagen en el disco
  63.                 objArchivo.Write(datos, 0, datos.Length);
  64.                 objArchivo.Close();
  65.                 return true;
  66.  
  67.             }
  68.             catch (Exception Ex)
  69.             {
  70.                 objMaster.fn_mensaje("Ha ocurrido un error inesperado: " + Ex.Message, false);
  71.                 return false;
  72.             }
  73.         }

Bueno fijate bien en la linea que dice

Código C# Code:
Ver original
  1. tamanoarchivo = archivo.ContentLength;
  2.                 if (tamanoarchivo > 500000)
  3.                 {
  4.                     objMaster.fn_mensaje("El tamaño maximo permitido por archivo es de " + Convert.ToString(500000 / 1000) + " kb", false);
  5.                     return false;
  6.                 }

En esta es donde debes cambiar el tamaño del archivo... no se puedes traerlo de una variable publica al autenticar el usuario que va a hacer el upload y alli reemplazar los valores ;)

Espero que mi ayuda te sea útil ;) (Y)
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 00:34.