2009-05-18 6 views
5

pour une facilité de mon application Je devrais avoir l'élément "runtime" de app.config dans un fichier séparé.Déplacement d'une section de app.config vers un fichier séparé

ai essayé quelque chose comme

<runtime file="runtime.conf" /> 

et aussi

<runtime configFile="runtime.conf" /> 

et runtime.conf je:

<runtime> 
    <assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1"> 
      ....... 
    </assemblyBinding> 
</runtime> 

Mais il est ignoré ...

Est il y a un moyen de trouver ou t qu'est-ce qui ne va pas?

Bien sûr, lorsque je copie une section d'exécution directement dans app.config cela fonctionne.

J'ai quelque part trouvé que lors de l'utilisation de configFile = "..." le fichier inclus doit se trouver dans un sous-répertoire. Je l'ai essayé mais cela ne fonctionne pas ...

Semble y compris ne fonctionne pas pour la section d'exécution.

+1

une solution finale à ce sujet? – Kiquenet

Répondre

1

Essayez ceci:

<runtime configSource="runtime.conf"/> 
+0

malheureusement le même résultat. Je l'essayais d'abord avec configSource et ensuite avec le "fichier" et le code copié à ma réponse ... Mais à l'origine il devrait être "configSource", il l'ignore simplement: D – RomanT

+0

Théoriquement l'attribut correct à spécifier, mais le runtime est un cas spécial qui ne lira pas la valeur configSource. Appris des tests. – jeffreypriebe

2

Salut est votre runtime.conf est dans votre dossier bin de l'application

+0

Il se trouve exactement dans le répertoire où app.config est. – RomanT

+0

Cependant, app.config est généralement copié dans la corbeille sous la forme .exe.config. Est-ce que votre runtime.config est également copié dans le dossier bin lors de la construction? –

+0

Ceci devrait être marqué comme la bonne réponse. J'avais exactement le même problème. J'ai changé la copie au répertoire de sortie pour copier toujours, et cela a fonctionné. – Eric

0

un match nul retour est que l'exécution de asp.net ne détecte pas lorsque le fichier externe comme l'exécution changements de .config. Échec de l'obtention des valeurs après la modification du fichier runtime.config

+0

Je n'obtiens AUCUNE valeur, en détail je fais bindredirection là pour pointer une application vers une autre version de DLL particulière donc je la vérifie seulement en utilisant un moniteur de DLL associé à mon application qui rapporte la version encore plus ancienne de DLL associée. – RomanT

2

Vous ne pouvez pas utiliser configSource pour externaliser la configuration <runtime>.

< L'exécution > est un cas spécial qui ne lit pas les valeurs d'un fichier externe spécifié dans configSource.

La spécification de l'attribut "configSource" ne provoquera pas d'erreur, le fichier source ne sera simplement pas lu.

Plus d'informations ici: http://world.episerver.com/Blogs/Magnus-Rahl/Dates/2011/6/Todays-gotcha-configSource-on-the-runtime-section-element/

Questions connexes