Das FileUpload-Steuerelement erfordert, dass ich in der SaveAs() -Methode ein gerootetes Verzeichnis zur Verfügung stelle. Ich würde jedoch sehr viel lieber die hochgeladenen Dateien in ein virtuelles Verzeichnis wie "~/UserFiles/[Benutzername]/[Dateiname]" gehen. Gibt es eine Möglichkeit für mich, das zu erreichen?FileUpads und gerootete Verzeichnisse
Antwort
die Seiten MapPath Methode: -
ctl.SaveAs(MapPath("~/UserFiles/[username]/[filename]"));
Danke. Alles ergibt jetzt Sinn. –
ummm. . . Gibt es eine Möglichkeit für mich, "~/userdata/[Benutzername]" zu erstellen, wenn es nicht bereits existiert? –
System.IO.Directory.CreateDirectory (MapPath ("~/userdata/[Benutzername]")); – AnthonyWJones
Nein, das Schlüsselwort ist erforderlich. Sie können Ihr Skript verwenden, um die Datei nach dem Download zu kopieren. Verwenden Sie
Hmmm. Weißt du, was das Grundprinzip ist, ein verwurzeltes Verzeichnis für dieses Steuerelement zu benötigen? Es scheint mir verrückt zu sein. –
Der rationale ist, dass es ein physischer Dateipfad ist, da Sie in das Dateisystem speichern. Pfade in URLs sind logische Pfade, die nicht physisch sind. Sehr wahrscheinlich werden viele Anwendungen die Datei außerhalb der Ordner speichern, die die Website darstellen. – AnthonyWJones
Ja. Aber in meinem Fall haben die Benutzer keine Kontrolle darüber, wo die Datei gespeichert wird. Nur mein Programm tut es. –
Manchmal ist der MapPath nicht direkt zugänglich.
In diesem Fall verwenden
ctl.SaveAs(Server.MapPath("~/UserFiles/[username]/[filename]"));
gibt es eine Möglichkeit für mich, "~/userdata/[Benutzername]" zu erstellen, wenn es nicht bereits existiert? –
- 1. .htaccess und Verzeichnisse!
- 2. ASP.NET und virtuelle Verzeichnisse
- 3. Wie durchlaufen Verzeichnisse in Powershell und verschieben Sie die Verzeichnisse?
- 4. Java WebStart und empfohlene Verzeichnisse
- 5. Smarty Verzeichnisse und Pfade einrichten
- 6. Openfiledialogs stören und Verzeichnisse persistent
- 7. Ist es möglich, in .hgignore gerootete Muster zu verwenden?
- 8. Dateien und Verzeichnisse innerhalb der Access-Datenbank
- 9. Liste Verzeichnisse und Dateien in einer Baumstruktur
- 10. Wie "Verzeichnisse/Conditionals" und "Library" Pfad
- 11. Swashbuckle, mehrere API-Versionen und virtuelle Verzeichnisse
- 12. Python-Pakete und Ei-Info-Verzeichnisse
- 13. SshNet SFTP Dateien und Verzeichnisse abrufen
- 14. Interne und Infrastruktur-Verzeichnisse im Projekt
- 15. Dateien und Verzeichnisse mit Shell-Skript zählen
- 16. Löschen eines Benutzerkontos und aller Dateien/Verzeichnisse
- 17. Eclipse und PHP: Verzeichnisse im Root-Projekt
- 18. Perl: rekursiv alle Dateien und Verzeichnisse umbenennen
- 19. Entfernen Sie leere Verzeichnisse und Verzeichnisse, die nur bestimmte Datei (Batch-Datei)
- 20. Rekursive Verzeichnisse und Datei streaming und Suche Strings
- 21. Navigation Verzeichnisse und Unterverzeichnisse und Bewegen der Dateien Shell
- 22. Verstecke Verzeichnisse in wxGenericDirCtrl
- 23. Verzeichnisse mit ssh vergleichen
- 24. Cmake Include Verzeichnisse
- 25. PHP, Verzeichnisse entfernen
- 26. Python, nur Verzeichnisse kopieren
- 27. Schleife durch hdfs Verzeichnisse
- 28. System.IO.Compression.ZipFile mehrere Verzeichnisse
- 29. Cygwin fehlt gehören Verzeichnisse
- 30. Legen Sie einige Web-Verzeichnisse als eingeschränkte Verzeichnisse
bewusst sein, was Sie tun, wenn ein Upload direkt in einen Ordner geht, die von Ihrem Web-Server zugegriffen werden kann. Scheint so, als ob du eine schwere Schwachstelle öffnest. –