Использование FileUpload C # - PullRequest
1 голос
/ 09 августа 2011

У меня есть проект, в котором я получаю список местоположений файлов strings, которые я хочу сохранить локально. Я хочу использовать FileUploader для этого. Я пытаюсь что-то вроде этого до сих пор:

            FileUpload filesaver = new FileUpload();

            //Iterate over each files (InputFiles is a linked list of file locations)
            foreach (string File in InputFiles)
            {
                //Get file
                Stream fileLoaded = OpenFile(File);

                filesaver.FileContent = fileLoaded;

                //Save file                    
                filesaver.SaveAs(DownloadLocation);

                //Code...}

Проблема в том, что filesaver.FileContent = fileLoaded; не является допустимым вызовом (FileContent только для чтения).

Как бы я мог получить файл в загрузчик файлов, чтобы я мог сохранить его, если у меня есть строка с расположением этого файла?

Редактировать Я использую Класс FileUpload

Ответы [ 2 ]

1 голос
/ 09 августа 2011

В ASP.NET FileUploader клиентская сторона отправляет файл на серверную часть.Он не отправляет путь к файлу в виде строки, поэтому нет способа перехватить путь к файлу и «загрузить» на стороне сервера.если это ваше намерение, вы не найдете способа добраться отсюда.

Если вы хотите сохранить двоичные биты самого файла, как только он попадет на сервер, существует множество примеров.которые сохраняют данные в базах данных или файловой системе.

Если вы пытаетесь получить пути в виде строк, загрузчик файлов не является вашим лучшим выбором, но учтите, что строки пути к файлам, если они локальны для клиентабесполезны на стороне сервера.

1 голос
/ 09 августа 2011

Вы можете просто использовать:

If (filesaver.HasFile)
{
        filesaver.SaveAs("C:\YourFilePath\" & filesaver.FileName);
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...