Процесс не может получить доступ к файлу, потому что он используется другим процессом - кнопка FileUpload - PullRequest
0 голосов
/ 11 июля 2011

Я просмотрел все остальные ответы, но все еще не могу понять, что не так.Я пробую простой fileUpload в проекте Azure.

Возможно, я не закрываю свой файловый поток.Вот мой код:

protected void UploadButton_Click(Object sender, EventArgs e)
{
    if (FileUpload1.HasFile)
    {
        try
        {
            if (FileUpload1.PostedFile.ContentType == "zip/rar/tar")
            {
                string fileName = FileUpload1.FileName;
                FileUpload1.SaveAs(Server.MapPath("~/") + fileName);
                Label2.Text = "File Uploaded Successfully !";
            }
            else
            {
                Label2.Text = "File type not allowed.";
            }
        }
        catch (Exception ex)
        {
            Label2.Text = "Error in File Upload. Please upload a zip/tar/rar file containing your text files.";
        }           
    }
}

Как мне закрыть файловый поток?

Спасибо, Супраджа

1 Ответ

1 голос
/ 11 июля 2011

Ну, сообщение об ошибке говорит обо всем.Файл, который вы пытаетесь сохранить, используется «чем-то» и поэтому заблокирован.Попробуйте изменить имя файла, и оно должно работать без ошибок, по крайней мере, один раз.Перейдите на сервер, если можете, и попытайтесь удалить файл вручную, и он скажет, какая программа использует этот файл.Метод SaveAs не должен требовать удаления, но если есть метод Close (), вызовите его.Иначе, если есть метод Dispose (), вызовите его после SaveAs (), и он должен хорошо работать.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...