2013-02-25 11 views
8

Czy możliwe jest tworzenie plików tymczasowych i obrazów w aplikacjach asp.net przy użyciu czegoś takiego:Pliki Temp Asp.net

Jeśli nie, jak mogę to zrobić? (ImagePB jest leczonych wcześniej bitmapy)

if (System.IO.File.Exists(System.IO.Path.GetTempPath() + @"img" + imgID.ToString() + "PB" + extencao) == true) 
{ 
    try 
    { 
     System.IO.File.Delete(System.IO.Path.GetTempPath() + @"img" + imgID.ToString() + "PB" + extencao); 
     imagePB.Save(System.IO.Path.GetTempPath() + @"img" + imgID.ToString() + "PB" + extencao, imgFormat); 
    } 
    catch (Exception) 
    { } 
} 
+0

Biorąc pod uwagę, że jest to strona .net, użytkownik, który wykonuje aplikację, będzie potrzebował dostępu do katalogu tymczasowego do odczytu/zapisu. Jeśli potrzebujesz pomocy w konfiguracji, przejdź do serverfault.com – NotMe

Odpowiedz

8

Tak, GetTempPath() powinien powrócić tymczasową ścieżkę, a kod został opublikowany powinien pracy. http://msdn.microsoft.com/en-us/library/system.io.path.gettemppath.aspx ma więcej informacji o tym, jak uzyskać GetTempPath() ścieżkę.

Mimo to nie sprawdza, czy katalog Ścieżka tymczasowa istnieje, ani czy można go zapisać w aplikacji. Nie napotkam sytuacji, w której GetTempPath() zwraca niedostępną ścieżkę. Prawdopodobnie chcesz uwzględnić to w swojej aplikacji, aby poradzić sobie z tą sytuacją.

Należy również pamiętać, jest to prawdopodobnie C:\Windows\Temp. Mógł mieć ograniczoną przestrzeń dyskową lub zostać usunięty w dowolnym momencie przez kogoś innego, gdy jest potrzebna przestrzeń dyskowa. Możesz utworzyć ścieżkę tymczasową w aplikacji i usunąć ją, gdy już jej nie potrzebujesz.

+0

A co z problemami bezpieczeństwa? – user2013107

+0

Jakie problemy z zabezpieczeniami? Martwisz się, że ktoś nieuprawniony widzi pliki? Możliwość, że nie można pisać do folderu 'GetTempPath()' zwraca? –

+1

Aplikacje ASP.net nie mogą domyślnie zapisywać do tego folderu. – Christian

Powiązane problemy