2010-10-06 6 views
1

Lorsque l'utilisateur demande http://localhost/WebApp1/Default.aspx, txtApplicationPath.Text doit être affecté “/WebApp1”, tandis que txtAbsolutePath.Text doit être affecté “http://localhost/WebApp1/Default.aspx”, mais les deux zones de texte affichent des chaînes vides.Pourquoi HttpContext.Current.Request.Url.AbsolutePath retourne une chaîne vide?

Pourquoi?

Default.aspx:

<asp:TextBox ID="txtApplicationPath" runat="server" 
    Text='<%# HttpContext.Current.Request.ApplicationPath %>'> 
</asp:TextBox> <br /> 
<asp:TextBox ID="txtAbsolutePath" runat="server" 
    Text='<%# HttpContext.Current.Request.Url.AbsolutePath %>'> 
</asp:TextBox> 

merci

+1

J'ai eu le même résultat. Cela fonctionnera si vous remplissez ces TextBox dans le code-behind au lieu du balisage. – DOK

+1

Ups, raison pour laquelle cela n'a pas fonctionné est parce que j'ai oublié d'appeler Page.Databind – user437291

Répondre

2

si vous voulez que l'URL complète, vous devez utiliser Request.Url.OriginalString, car AbsolutePath omettra la partie hôte de l'URL.

Questions connexes