2009-07-29 9 views
3

Le répertoire temporaire qui est utilisé par ASP.NET est généralement situé sousComment obtenir le répertoire temporaire ASP.NET par programme?

C:\Windows\Microsoft.NET\Framework\<version>\Temporary ASP.NET Files\

Parfois, cependant, il est remplacé par l'attribut tempDirectory sur l'élément de compilation dans le fichier web.config.

Comment puis-je obtenir le répertoire temporaire actuellement utilisé par ASP.NET, qu'il s'agisse du répertoire par défaut ou d'un répertoire surchargé par l'utilisateur?

P.S. Il y a quelques propriétés qui retourneront un sous-répertoire sous le répertoire temporaire (par exemple AppDomain.CurrentDomain.DynamicDirectory et autres) mais je cherche le répertoire tel qu'il apparaît dans le fichier de configuration.

+3

Pourquoi et quand voudriez-vous connaître le répertoire temporaire ASP.NET? – Michael

+0

Pour stocker des fichiers dans un dossier temporaire par site. (chaque site a son propre dossier temporaire) –

Répondre

4

Vous voulez la propriété statique HttpRuntime.CodegenDir

<%@ Page Language="C#" %> 
<script runat="server" language="C#"> 
    void Page_Load(object Sender,EventArgs E) 
    { 

    lblCodegenDir.Text = System.Web.HttpRuntime.CodegenDir; 
    } 
</script> 
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"> 
<HTML> 
    <HEAD> 
    <TITLE>Test Application</TITLE> 
    </HEAD> 
    <BODY> 
    <FORM id="frmForm1" method="post" runat="server"> 
     <HR width="100%" size="1"> 
     <P> 
     ASP.Net Temp Dir:&nbsp; 
     <ASP:LABEL id="lblCodegenDir" runat="server">Label</ASP:LABEL> 
     </P> 
     <HR width="100%" size="1"> 
    </FORM> 
    </BODY> 
</HTML> 
+0

Cela ne retourne pas le répertoire défini dans le fichier de configuration, mais un sous-répertoire dynamique. –

+0

Hmm - Je ne suis pas sûr de ce que vous cherchez alors. Si c'est le répertoire dans le fichier machine.config, vous devrez analyser ce fichier ... –

Questions connexes