2017-06-15 1 views
2

Est-il possible de configurer les paramètres asp pour un location donné en utilisant le package Microsoft.Web.Administration?Configuration des paramètres ASP à l'aide de Microsoft.Web.Administration

Je voudrais ajouter par programme la section suivante à un fichier local IIS applicationHost.config.

<configuration> 
    ... 

    <location path="Default Web Site/myAppPath"> 
     <system.webServer> 
      <asp appAllowClientDebug="true" appAllowDebugging="true" enableParentPaths="true" scriptErrorSentToBrowser="true" /> 
     </system.webServer> 
    </location> 

</configuration> 

Je ne trouve aucune façon, car cette section ne fait pas partie à un site ou une application qui sont possibles pour maintenir en utilisant ce paquet.

Si non, existe-t-il d'autres alternatives riches en fonctionnalités à Microsoft.Web.Administration?

Répondre

2

C'est possible. Il y a même un assistant qui peut vous aider à créer de tels scripts à partir de l'interface graphique du gestionnaire IIS si vous avez Administration Pack installé sur votre serveur.

Gestionnaire des services Internet> Sites> Site Web par défaut>myAppPath> Configuration Editor

Screenhots ont été prises pour le site Web par défaut, mais les étapes sont les mêmes pour une application virtuelle comme le vôtre.

IIS Configuration Editor

section Sélectionner (system.webServer/asp) et le fichier de configuration (ApplicationHost.config <location path="Default Web Site/myAppPath">) et effectuez les modifications.

enter image description here

Après avoir effectué les modifications ne cliquez pas Appliquer, cliquez simplement sur le Générer un script. Cela ouvrira une boîte de dialogue avec certains scripts prêts à être utilisés pour effectuer des modifications par programme.

Script Diaog

using System; 
using System.Text; 
using Microsoft.Web.Administration; 

internal static class Sample { 

    private static void Main() { 

     using(ServerManager serverManager = new ServerManager()) { 
      Configuration config = serverManager.GetApplicationHostConfiguration(); 

      ConfigurationSection aspSection = config.GetSection("system.webServer/asp", "Default Web Site"); 
      aspSection["appAllowClientDebug"] = true; 
      aspSection["appAllowDebugging"] = true; 
      aspSection["enableParentPaths"] = true; 
      aspSection["scriptErrorSentToBrowser"] = true; 

      serverManager.CommitChanges(); 
     } 
    } 
} 
+0

Wow, je vous remercie beaucoup pour la réponse détaillée. –

+0

@ ZoltánTamási vous êtes les bienvenus. –