webForumDet fria alternativet

Komma åt applikationsroten i codebehind?

.NET

3 svar · 306 visningar · startad av maqe

Medlem sedan dec. 2003824 inlägg
Frågan#1

Hur gör jag för att komma åt applikationsroten i codebehind?

jag har i min webbconfig lagt till detta

<add key="RootDir" value="/siten/" />

När jag sedan hämtar det värdet med ConfigurationSettings.AppSettings["RootDir"] när jag t.ex. skall ladda ett xml dokument med myXmlDoc.Load(ConfigurationSettings.AppSettings["RootDir"] + "lang/sv.xml") så hamnar jag i system32 eller något liknande? Hur skall jag göra för att kunna sätta rootdir i web.config och sedan använda det som jag tänkt?

Medlem sedan dec. 19996 721 inlägg
#2

myXmlDoc.Load(Server.MapPath(ConfigurationSettings.AppSettings["RootDir"] + "lang/sv.xml"))

eller

myXmlDoc.Load(System.IO.Path.Combine(Request.PhysicalApplicationPath,"lang\sv.xml"))

edit: fixade en slash

Medlem sedan dec. 2003824 inlägg
#3

Tackar emission ...

Medlem sedan juli 20022 537 inlägg
#4

För att komma till roten för din applikation kan du annars använda Server.MapPath("~/");.

266 ms totalt · 4 externa anrop · v20260731065814-full.a51de22e
131 ms — deklarationer (db)
0 ms — hämta statistik (cache)
131 ms — hämta tråd, inlägg och bilagor (db)
132 ms — ändringar (db)