Question

Je sais que |Répertoire de données| se résoudra à App_Data dans une application ASP.NET, mais est-ce codé en dur ou existe-t-il un mécanisme généralisé à l'œuvre dans le sens de %Variables d'environnement%?

Était-ce utile?

La solution

Depuis le MSDN Blog sur les données des clients intelligents:

Dans cette version, le .NET Runtime a ajouté la prise en charge de ce que nous appelons la macro DataDirectory.Cela permet à Visual Studio de mettre une variable spéciale dans la chaîne de connexion qui sera élargie au moment de l'exécution ...

Par défaut, le | dataDirectory | La variable sera élargie comme suit:

  • Pour les applications placées dans un répertoire sur la machine utilisateur, ce sera le dossier de l'application (.exe).
  • Pour les applications exécutées sous ClickOnce, ce sera un dossier de données spécial créé par ClickOnce
  • Pour les applications Web, ce sera le dossier App_Data

Sous le capot, la valeur pour | dataDirectory | vient simplement d'une propriété sur le domaine de l'application.Il est possible de modifier cette valeur et de remplacer le comportement par défaut en faisant cela:

AppDomain.CurrentDomain.SetData("DataDirectory", newpath)
Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top