none
Cargo de Archivo CSV RRS feed

  • Pregunta

  • Hola Amigos,

    Tengo una aplicación web y subo un archivo CSV este lo guardo en una carpeta del servidor y luego lo leo registro por registro y mando mis datos a una base de datos SQL

    El problema que tengo es este......por ejemplo si mi archivo tiene 100 registros entonces mando solo uno primero en el archivo..y todo lo hacen bien, y después mando los otros 99 archivos y todo bien,.

    Entonces deduzco que es la primera vez que me de problema.....

    ayuda con esto porfa

    este es el código

    foreach (var file in archivo)
                        {
                            var nombrearchivo2 = Path.GetFileName(file.FileName);
                         
                           var physicalPathT2 = Path.Combine(Server.MapPath("http://back.suscripciones.pp:5015"), nombrearchivo2);
                            physicalPathT2 = physicalPathT2 + "Temp";
                            file.SaveAs(physicalPathT2);

                        }

    Gracias

    viernes, 17 de marzo de 2017 15:57

Respuestas

Todas las respuestas

  • hola

    partamos de la base que Server.MapPath("http://back.suscripciones.pp:5015") no es correcto, se supone que debes conocer la ruta fisica dentro del sitio web

    para esto se usa

    string path = Server.MapPath("~/");

    pero como veras no se define una url, sino la carpeta

    o quizas usar

    var physicalPathT2 = Path.Combine(Server.MapPath("~/"), nombrearchivo2);

    esto si el archivo esta en el raiz del sitio web

    Nota: si estas indicando el nombre del archivo no puede unirle un "temp" al final

    saludos


    Leandro Tuttini

    Blog
    MVP Profile
    Buenos Aires
    Argentina

    viernes, 17 de marzo de 2017 16:09
  • hola gracias por responder

    el archivo no estará en la raíz del sitio, estará en un back aquí...http://back.suscripciones.pp.com:5015

    foreach (var file in archivo)
                        {
                            var nombrearchivo = Path.GetFileName(file.FileName);
                           var physicalPathT = Path.Combine(Server.MapPath("http://back.suscripciones.pp.com:5015"), nombrearchivo);
                            file.SaveAs(physicalPathT);
                        }

    Y si lo guarda bien, pero tengo el inconveniente mencionad.


    viernes, 17 de marzo de 2017 16:18
  • >>estará en un back aquí...http://back.suscripciones.pp.com:5015

    pero entonces el Server.MapPath() no aplica

    debes usar la clase WebClient y realizar un upload del archivo

    WebClient.UploadFile Method (String, String)

    >>Y si lo guarda bien, pero tengo el inconveniente mencionad.

    estas seguro que lo guarda? yo lo dudo

    saludos


    Leandro Tuttini

    Blog
    MVP Profile
    Buenos Aires
    Argentina

    viernes, 17 de marzo de 2017 18:18
  • No e usado el WebClient, me podría indicar como quedaría con mi código...porfa
    viernes, 17 de marzo de 2017 18:26