Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

How do I load a file from bin folder in ASP.NET in medium trust

I need to load an xML file from the bin folder in ASP.NET (MVC, not that it would count). I can't get the bin folder path nor load the file otherwise.. I need to feed the following method :

using(var file = System.IO.File.OpenRead(/* something */))
{

}
like image 702
Andrei Rînea Avatar asked May 27 '10 22:05

Andrei Rînea


2 Answers

well.. under medium trust all I could do and not have it blown in my face was this :

var binFolderPath = Server.MapPath("bin");

then

Path.Combine(binFolderPath, "myConfigFile.xml");
like image 189
Andrei Rînea Avatar answered Oct 15 '22 21:10

Andrei Rînea


For some reason it would appear that by default, your IIS is not allowing access to your bin folder. This is probably inherited from the parent site above your virtual directory. Regardless, see this link regarding FileIO with medium trust:

http://msdn.microsoft.com/en-us/library/ms998341

You likely need to add a section to your web.config to provide specific access to your AppDir to override the setting from the parent site/virtual directory.

<IPermission
  class="FileIOPermission"
  version="1"
  Read="$AppDir$"
  Write="$AppDir$"
  Append="$AppDir$"
  PathDiscovery="$AppDir$"
/>
like image 20
Brian Webster Avatar answered Oct 15 '22 21:10

Brian Webster