Sto utilizzando Request.ApplicationPath per imparare il nome della directory virtuale in cui sono in esecuzione. C'è un modo più affidabile?Ottieni il nome della directory virtuale?
12
A
risposta
16
Request.ApplicationPath
è un modo perfettamente affidabile per ottenere la directory virtuale e funziona sempre quando si dispone di HttpContext e può richiedere i dati della richiesta.
Per l'ulteriore elaborazione e l'estrazione di parti del percorso, dare un'occhiata alla classe VirtualPathUtility.
2
È necessario utilizzare Request.ApplicationPath. Questo è ciò per cui è stato progettato.
Modifica per andare con il tuo commento.
Dal momento che si desidera un modo "pulito" per gestire la barra, è consigliabile creare una funzione di utilità che restituisca il percorso dell'applicazione con la logica al suo interno per gestire la barra come si ritiene opportuno.
0
Usare questa funzione in C#
:
public static String GetHost()
{
var request = HttpContext.Current.Request;
return request.Url.Scheme + "://" + request.ServerVariables["HTTP_HOST"] + request.ApplicationPath;
}
Problemi correlati
- 1. PHP Ottieni il nome della directory corrente
- 2. Ottieni il nome della directory dal percorso completo della directory indipendentemente dalla barra finale
- 3. Ottieni il nome della sottoclasse?
- 4. PHP: Ottieni l'ultimo nome della directory dal percorso
- 5. .NET: Ottieni il nome della proprietà nell'attributo
- 6. Ottieni il nome della superclasse in ES6
- 7. Ottieni il nome della funzione VBA corrente
- 8. Ottieni il nome dell'oggetto o della classe
- 9. Ottieni il nome della classe genitore?
- 10. Ottieni il nome della categoria dall'ID post
- 11. Ottieni il nome della variabile. javascript "reflection"
- 12. Come si modifica il nome predefinito della directory virtuale durante l'installazione di un servizio Web?
- 13. Ottieni nome cartelle dalla directory delle risorse
- 14. Rinominare file in più directory per il nome della directory
- 15. Ottieni il nome della colonna vincolante della texbox di templatefield
- 16. Rails: Ottieni il nome della classe esterna all'interno della preoccupazione
- 17. Ottieni l'URL di root dell'applicazione e il nome della directory nell'applicazione Symfony 2
- 18. Ottieni l'ultimo file nella directory
- 19. Ottieni il contenuto della directory in ordine modificato data
- 20. Ottieni la directory specifica della locale in I miei documenti
- 21. Ottieni il nome da PID?
- 22. Ottieni l'handle della finestra dal nome della classe della finestra
- 23. Ottieni WOEID dal nome della città?
- 24. installazione npm fallita a causa della directory virtuale
- 25. Ottieni l'istanza della classe per nome della stringa della stringa
- 26. Ottieni il nome completo della CPU senza WMI
- 27. Ottieni il nome della lingua localizzata dal codice locale
- 28. Ottieni il nome host della richiesta corrente in node.js Express
- 29. Ottieni il nome della classe Ruby senza metodo di classe
- 30. Ottieni il nome della funzione corrente in modalità rigorosa
Ciò che rende 'Request.ApplicationPath' inaffidabile? –
Non avrei mai dovuto usare la parola "affidabile". "Cleaner" sarebbe stato un modo migliore. Mi piacerebbe qualcosa che mi ha dato il nome (o pseudonimo) della Directory virtuale senza riguardo a me con la barra all'inizio. Petty, lo so, ma non mi dispiace chiedere questo genere di cose. Mi dispiace per la mia povera espressione. – lance
Creare una funzione di utilità per fornire ciò che si desidera. Ovviamente, utilizzando il Request.ApplicationPath per iniziare. –