Где лучше всего удалить временные файлы в приложении ASP.net?

Я создаю несколько временных файлов в своем приложении asp.net, и мне нужно удалить их, когда пользователь покончит с ними.

Я старался

 void Session_End(object sender, EventArgs e) 
    {

        System.IO.File.Delete(@"C:\Temp\test.doc");        
    }

но это не работает

Есть идеи?

3 ответа

Вы должны предоставить разрешения для iisuser в этой папке

Не существует надежного (работающего 100% времени) способа определить, когда пользователь покидает веб-приложение. В то время как обычные средства будут работать, когда все работает, как ожидалось, существуют крайние случаи, которые могут потерять данные, например

Компьютер пользователя зависает или падает... Сервер зависает или падает... Не удается подключиться к Интернету пользователя... Не удается подключиться к Интернету сервера...

Вы поняли идею. По этой причине я лично предпочитаю выполнять всю обработку в памяти, а не записывать временные файлы на жесткий диск веб-сервера. Таким образом.Net сборщик мусора будет обрабатывать очистку любых потерянных данных.

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

1) Установите переменную режима на web.config

<sessionState 
        mode="InProc"
        stateConnectionString="tcpip=127.0.0.1:42424"
        sqlConnectionString="data source=127.0.0.1;Trusted_Connection=yes"
        cookieless="false" 
        timeout="20" 
/>

2) Запустите переменную Session. 3) Поместите некоторый код в Session_End, а затем проверьте, выполняется ли этот код, когда пользователь нажимает [X] в браузере.

Взято из следующего

http://www.tek-tips.com/viewthread.cfm?qid=742667

Надеюсь это поможет

Другие вопросы по тегам