Question

Je dois charger un fichier XML à partir du dossier bin dans ASP.NET (MVC, pas qu'il compterait). Je ne peux pas obtenir le chemin du dossier bin ni charger le fichier autrement .. Je dois nourrir la méthode suivante:

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

}
Était-ce utile?

La solution

bien .. en confiance moyenne tout ce que je pouvais faire et ne pas le faire sauter dans mon visage était celle-ci:

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

puis

Path.Combine(binFolderPath, "myConfigFile.xml");

Autres conseils

une raison quelconque, il semblerait que, par défaut, votre IIS ne permet pas l'accès à votre dossier bin. Ceci est probablement hérité du site parent au-dessus de votre répertoire virtuel. Peu importe, voir ce lien avec la confiance en ce qui concerne FileIO moyen:

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

Vous devez probablement ajouter une section à votre web.config pour fournir un accès spécifique à votre AppDir pour remplacer le paramètre du site parent / répertoire virtuel.

<IPermission
  class="FileIOPermission"
  version="1"
  Read="$AppDir$"
  Write="$AppDir$"
  Append="$AppDir$"
  PathDiscovery="$AppDir$"
/>
Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top