webForumDet fria alternativet

Ladda upp filer

.NET

2 svar · 434 visningar · startad av smileenergy

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

Hejsan,
det är som så att jag håller på med en filuppladdning till min sida men jag får det inte att fungera på mitt webbhotell, aleborg. Som ni vet kör de medium trust på sina servrar så hur måste man då skriva för att få ladda upp filer?
Min lilla simpla kod fungerar inte iallafall.

protected void btnUpload_Click(object sender, EventArgs e)
    {
         FileUpload1.SaveAs(Server.MapPath("files/" + FileUpload1.FileName));
    }

Jag får följande fel:
Access to the path 'd:\www\.......\html\files\Dock.jpg' is denied.

Kan man ställa in i visualstudio på något sätt att man vill köra asp.net med mediumtrust så att man får upp sånna här fel även när man sitter och utvecklar sidan hemma?

Medlem sedan dec. 19996 721 inlägg
#2

Detta är inte trust-relaterat. Du har helt enkelt inte skrivrättighet i filsystemet (filen kanske redan finns)

Medlem sedan jan. 200781 inlägg
#3

hmm, det verkar knasigt.
Nej filen finns inte och sökvägen är korrekt!
Jag trodde att det hade med trust leveln att göra då jag testat att köra samma kod på en sida utan medium trust och där fungerade koden.
edit: Jag kollade på permissons för sidan och de stod tydligen bara som read, tack för hjälpen.
Dock så har jag fått ett annat problem... han säger att man inte får backa ut ur html mappen via .../ , så vad finns det för andra sätt att stega tillbaka ett steg?

alltså jag är inne i html-mappen och vill gå ur den, sen in i data och files.
Då trodde jag att det skulle fungera att skriva
FileUpload1.SaveAs(Server.MapPath("../data/files/" + FileUpload1.FileName));
men det gjorde det tydligen inte..

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