31. oktober 2004 - 21:04Der er
28 kommentarer og 1 løsning
ASP.NET og mapper!
Hej!
Jegh har et problem! På mit website vil jeg gerne vist nogle filer i en liste som jeg har liggende på computeren. Det er let nok, kode:
Dim strFileNamePath As String strFileNamePath = "C:\Inetpub\wwwroot\WebApplication1\Filer" Dim dirInfo As DirectoryInfo = New DirectoryInfo(strFileNamePath) Dim aFiles As FileInfo() = dirInfo.GetFiles("*.*")
Men de filer jeg har er meget store, og for at de kan "indlæses" i asp.net kal de ligge i en mappe i IIS. Dvs at hvis jeg skal se mine filer på min webside skal jeg ligge flere gb, ind i IIs mappen. Det vil jeg selvfølgelig gerne nudgå! Har prøvet at oprette en virtuel mappe i IIS med navnet "Filer", men i asp.net kan koden ikke finde mappen ... findes der ikke et smart trick så jeg kan hente filer fra mapper på hele computeren?
hvis man skal kunne hente filerne via http også - vil det dog være klart det letteste, hvis du sørger for at folderen er et virtual subdir til dit web. det plejer at være det nemmeste synes jeg. mvh
Hmm .. jamen hvad skal jeg gøre .. hvordan sørger jeg for at asp.net har adgang til de filer? Har nemlig prøvet at linke direkte til mappen .. så fejlen den og siger at adgang er nægtet.
højreklik på folderen, og vælg "sharing and security" (det er lidt afhændig af os). der kan du gå ind under folderen security, hvor der vil være en liste over de brugere der har rettigheder på folderen. der klikker du add, og skriver ASPNET.
der hvor de har skrevet New User skriver du så bare ASPNET.... hvis du er på et domæne skal du under locations sørge for at angive at du vil finde en bruger på lokalmaskinen. mvh
*lolz* vi skrev på samme sekund ! - det har jeg ikke set før :o)
hvis du fra webbet vil linke til filerne, synes jeg du skal angive det som et virtual directory under dit application directory. (højreklik på det virtual directory som dit web ligger under, og så new->virtual directory). så kan du linke til det via vanlige url-en uden ballade, og du har kun ét root-web for din applikation.
er der slet ikke et faneblad der har det samme indhold som på billedet, eller er det deaktiveret ?
hvis du ikke kan give den bruger processen kører under adgang til mappen kan du ikke få det til at virke med mindre du sætter processen til at køre under en anden bruger med andre rettigheder (dette gøres i machine.config, men det er sådan lidt et sikkerheds-hack).
du skal nok slå det til... der står godt nok noget om fax i toppen af denne, men jeg tror det et det du skal bruge : http://support.microsoft.com/?kbid=304040 (det er videoen der viser det).
(det er ikke rigtig mit domæne det her.... det er mere det med ASP.NET jeg plejer at gøre i.... men du kan jo prøve at klikke det fra og til og se om det gør en forskel :o) - det er jo sansynligt at man ikke kan gøre det store, hvis simpel fildelign er slået til...
du kan ikke linke direkte til den fysiske fil via filsystemet... du bliver nødt lave dem om til http-links, og hvis du alligevel står med filnavnet i hånden kan du bare lavet et link ud fra det + den IIS-mappe du har filerne liggende i ganske simepelt f.eks. ved :
hov undskyld... jeg har været uopmærksom :o( - sorry. mvh
Synes godt om
Ny brugerNybegynder
Din løsning...
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.