IIS 7 - altere o atributo allowDefinition para uma seção de configuração em machine.config

3

Temos uma situação em que precisamos limitar explicitamente o system.web/processModel/maxAppDomains = 1 de um website. O problema é que system.web/processModel só pode ser definido no nível machine.config por padrão:

<configuration>
    <configSections>
        <sectionGroup name="system.web">
            <section name="processModel" allowDefinition="MachineOnly" />
        </sectionGroup>
   </configSections>
<configuration>

Eu sei que %windir%/system32/inetsvr/appcmd.exe pode ser usado para atualizar as configurações do IIS, mas não encontrei uma maneira de atualizar o atributo allowDefinition da definição da seção processModel . Alguém pode me apontar na direção certa aqui?

Obrigado

    
por scripni 19.03.2013 / 16:16

2 respostas

1

usando o provedor de WMI:

' SetAllowDefinition is a static method, you should call it by getting a class object, as in the following example  
Set oAnonAuth = oWebAdmin.Get("AnonymousAuthenticationSection")
oAnonAuth.SetAllowDefinition "MachineOnly"

com base no meu entendimento, acho que você está interessado em definir AllowDefinition como valores [AppHostOnly] ou [MachineToApplication].

ref: link

nota: As alterações na classe ProcessModelSection entram em vigor somente quando o processo de trabalho é reiniciado, não imediatamente após a alteração da configuração.

Eu usei o seguinte código para definir maxAppDomain = 1 para o aplicativo da web atual ", mas você pode alterá-lo para qualquer arquivo .config fornecendo o caminho"

System.Configuration.Configuration configuration = WebConfigurationManager.OpenWebConfiguration("");
            System.Web.Configuration.ProcessModelSection processModelSection =
                        (ProcessModelSection)configuration.GetSection("system.web/processModel");
            processModelSection.MaxAppDomains = 1;

espero que isso ajude, mas eu tive que assumir algumas coisas já que os requisitos das perguntas precisam de mais esclarecimentos.

    
por 24.03.2013 / 16:37
0

Você já tentou editar o arquivo machine.config diretamente? Toda vez que me deparo com problemas com o arquivo machine.config, acabei de editar o arquivo diretamente.

    
por 26.03.2013 / 00:45