XmlReader i WebPart til WSS site

Tags:    asp.net

Hvordan kan man få adgang til at læse en xml fil fra en webpart der indgår i et WSS site?

Jeg har flg. simple webpart:
Fold kodeboks ind/udKode 


Når webparten køres caster den en SecurityException:

[SecurityException: Request for the permission of type 'System.Net.WebPermission, System, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089' failed.]

Webparten er signed / strong-named og trust level er sat til medium.

Jeg har prøvet at smide webparten i GAC istedet for, men uden held. Jeg har også lavet en custom CAS/trust configuration og prøvet med den istedet for Medium trust level, men stadig uden held. Men det burde jo også virke når webparten placeres i GAC?
I min custom trust-configuration har jeg bl.a. prøvet at tilføje et IPermission element der sætter Unrestricted til true for WebPermission.

Hvis jeg udkommenterer hvad der har med XmlReaderen at gøre fungerer webparten uden problemer.

Skal man parse XML filen på en eller anden speciel måde, eller hvordan?

edt:
Undskyld, jeg glemte lige at nævne at jeg selvfølgelig også har prøvet med Full trust level. Når den kører på full caster den en [WebException: The remote server returned an error: (401) Unauthorized.], og det er vel og mærket når jeg afvikler koden med SPSecurity.RunWithElevatedPrivileges.



Indlæg senest redigeret d. 01.09.2008 10:56 af Bruger #2034
4 svar postet i denne tråd vises herunder
0 indlæg har modtaget i alt 0 karma
Sorter efter stemmer Sorter efter dato
Okay, det virker åbenbart hvis jeg smider min xml fil i C:\Windows\System32\inetsrv og kører Full trust.

Er der ikke et lidt mere velegnet sted at placere ens resourcer, hvor man stadig kan opnå tilstrækkelig adgang til at skrive/læse til filen?



Jeg ved ikke rigtig noget om emnet, men faldt over det her link da jeg lige googlede det :) og tænkte at det måske kunne hjælpe da der et sted længere nede på siden (søg) bliver gennemgået netop det problem.

http://www.fpweb.net/support/sharepoint/sharepoint.portal.server.2003.web.parts.intro.asp



Okay mange tak.

Ja nu må du endelig ikke tro at jeg ikke har søgt på google :)

Ift. linket.
Løsningen må være at jeg tilføjer mine controls i OnPreRender istedet for CreateChildControls, da Page.Server ikke er instantieret i sidstnævnte. Og for at få stien til et virtuelt directory bliver man jo nød til at anvende MapPath. Men jeg kunne selvfølgelig også bare hardcode en absolut sti til filen, men igen, det er jo rimelig dårlig stil.

Du får pointene.



Så tager jeg dem selv.
Tråden lukkes.



t