webForumDet fria alternativet

felaktig sökväg i server.mappath

.NET

7 svar · 335 visningar · startad av Claysson

Medlem sedan jan. 200454 inlägg
Frågan#1

I roten där websajten också ligger har jag en dbconn.cs fil som jag använder för databaskopplingar. I denna har jag då sökvägen till databasen som också ligger på rotnivå:

Server.MapPath("DataBas.mdb");

Detta fungerar bra.

Men hur gör man med Server.MapPath när man som jag har en mapp /admin och vill komma åt databasen, är enda sättet att skriva hela sökvägen till databasen, eller finns det något smidigt sätt med Server.MapPath så man slipper fippla med sökvägarna?

Medlem sedan juni 200032 967 inlägg
#2

Utgå ifrån roten, dvs inled med en /.

Medlem sedan jan. 200454 inlägg
#3

Jag är lite osäker på vad du menar. Såhär:

Server.MapPath("/DataBas.mdb");

?

(Kan inte testa då jag sitter på jobbet.. )

Medlem sedan juni 200032 967 inlägg
#4

Jepp, så jag menar. Om databasen ligger i webroten förstås (det borde den dock inte göra...).

Nu kan jag visserligen nada om asp.net, men server.mappath är väl ett arv från gamla asp, så det borde fungera. Fast säker kan man ju aldrig vara. ;)

mvh

Medlem sedan jan. 200454 inlägg
#5

Ok, tack för hjälpen, återkommer senare ikväll så får vi svaret =)

Medlem sedan juni 20019 024 inlägg
#6

Lägg sökvägen till databasen i web.config. Då slipper du kompilera om ditt projekt om du skulle ändra sökväg/filnamn.

Medlem sedan apr. 2004778 inlägg
#7

Det beror även på om du med rot menar wwwroten eller applikationsroten. Om databasen ligger i applikationsroten kommer du åt den med ~/Databas.mdb

Medlem sedan jan. 200454 inlägg
#8

Tack, det fixade biffen!

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