Podczas tworzenia nowej aplikacji ASP.NET w programie Visual Studio kilka plików i folderów jest tworzonych automatycznie. Jeden z tych folderów ma nazwę App_Data
.
Również podczas publikowania strony internetowej po wybraniu opcji menu dostępne Build->Publish
jest pole wyboru Include files from the App_Data folder
.
Czy mam rację, zakładając, że pliki umieszczone w tym pliku i jego podfoldery nie będą dostępne w sieci? Na przykład, czy bezpiecznie byłoby umieścić w tym folderze zasoby, których mam zamiar używać tylko przez kod aplikacji?
Jakie jest rzeczywiste przeznaczenie App_Data
folderu?
EDYTOWAĆ:
Dziękuję za wszystkie odpowiedzi. Z dotychczasowych odpowiedzi interesują mnie przede wszystkim dwa wymienione punkty:
- App_Data jest zasadniczo punktem przechowywania dla magazynu danych opartego na plikach
- Nie powinien być widoczny w sieci i jest miejscem, w którym aplikacja internetowa może przechowywać i odczytywać dane
Czy ktoś mógłby określić, w jaki sposób zapewniona jest „niewidoczność w sieci”? Czy mogę polegać na tym fakcie podczas wykonywania standardowego wdrożenia, czy też muszę sprawdzić niektóre ustawienia usług IIS na serwerze.
W sytuacji gdy mam zestaw plików pdf, do których chcę mieć dostęp tylko z poziomu aplikacji. Czy folder App_Data byłby właściwym miejscem do użycia, czy też powinienem utworzyć oddzielny folder i ręcznie ustawić usługi IIS, aby upewnić się, że nie jest dostępny w sieci Web?
w usługach IIS podświetl komputer, kliknij dwukrotnie „Filtrowanie żądań”, otwórz kartę „Ukryte segmenty”. „App_Data” jest tam wymieniony jako folder z ograniczeniami. Tak, wiem, że ten wątek jest naprawdę stary, ale nadal obowiązuje.
źródło
Zamierzonym zastosowaniem App_data jest przechowywanie danych aplikacji w celu uzyskania dostępu do procesu internetowego. Nie powinien być widoczny w sieci i jest miejscem, w którym aplikacja internetowa może przechowywać i odczytywać dane.
źródło
To miejsce na umieszczenie wbudowanej bazy danych, takiej jak Sql Server Express, Access lub SQLite.
źródło
Folder App_Data to folder, w którym proces roboczy asp.net ma również prawa do systemu plików, ale nie jest publikowany za pośrednictwem serwera sieci Web.
Na przykład używamy go do aktualizacji lokalnego pliku CSV formularza kontaktowego . Jeśli preferowana metoda wiadomości e-mail nie powiedzie się lub wymagane jest zapytanie źródła danych, pliki App_Data są dostępne.
Nie jest to idealne rozwiązanie, ale to dobry odwrót.
źródło
Z dokumentacji dotyczącej struktury folderów projektu sieci Web ASP.NET w witrynie MSDN:
źródło
Głównym celem jest przechowywanie plików bazy danych aplikacji w formacie.
I nie, domyślnie nie będzie to dostępne w sieci.
źródło
Używamy go jako tymczasowego miejsca przechowywania przesłanych plików CSV. Po załadowaniu metoda Ajax przetwarza i usuwa plik.
źródło
Przeznaczeniem App_Data jest przechowywanie pliku związanego z bazą danych. Zwykle pliki mdf programu SQL Server Express.
źródło