Condividi tramite


Aggiunta di provider di avvio automatico del <servizio>

Panoramica

L'elemento <add> dell'elemento <serviceAutoStartProviders> aggiunge un provider alla raccolta di provider di avvio automatico.

L'elemento <serviceAutoStartProviders> specifica una raccolta di assembly gestiti che il servizio di attivazione dei processi di Windows (WAS) verrà caricato automaticamente quando l'attributo startMode di un pool di applicazioni è impostato su AlwaysRunning. Questa raccolta consente agli sviluppatori di specificare assembly che eseguono attività di inizializzazione prima che vengano gestite le richieste HTTP. Ad esempio, uno sviluppatore di applicazioni può voler stabilire il connessioni alle banche dati iniziale per l'applicazione prima che IIS inizi l'elaborazione delle richieste. Ciò consentirà all'applicazione di eseguire più velocemente le richieste iniziali che richiedono round trip da e verso un database.

Per altre informazioni su come configurare i pool di applicazioni per l'avvio automatico, vedere l'argomento <applicationPools> .

Nota

Questo elemento è stato introdotto in IIS 7.5.

Compatibilità

Versione Note
IIS 10.0 L'elemento <add> non è stato modificato in IIS 10.0.
IIS 8,5 L'elemento <add> non è stato modificato in IIS 8.5.
IIS 8,0 L'elemento <add> non è stato modificato in IIS 8.0.
IIS 7,5 L'elemento <add> dell'elemento <serviceAutoStartProviders> è stato introdotto in IIS 7.5.
IIS 7.0 N/D
IIS 6.0 N/D

Installazione

L'elemento <add> dell'elemento è incluso nell'installazione <serviceAutoStartProviders> predefinita di IIS 7.5.

Procedure

Come configurare un provider di avvio automatico del servizio

Nota

Non esiste un'interfaccia utente diretta che consente di configurare l'elemento <serviceAutoStartProviders> , pertanto i passaggi seguenti useranno la funzionalità Editor configurazione IIS.

  1. Aprire Gestione Internet Information Services (IIS):

    • Se si usa Windows Server 2012 o Windows Server 2012 R2:

      • Sulla barra delle applicazioni fare clic su Server Manager, scegliere Strumenti, quindi fare clic su Gestione Internet Information Services (IIS).
    • Se si usa Windows 8 o Windows 8.1:

      • Tenere premuto il tasto Windows, premere la lettera X e quindi fare clic su Pannello di controllo.
      • Fare clic su Strumenti di amministrazione, quindi fare doppio clic su Gestione Internet Information Services (IIS).
    • Se si usa Windows Server 2008 o Windows Server 2008 R2:

      • Sulla barra delle applicazioni fare clic su Start, scegliere Strumenti di amministrazione, quindi fare clic su Gestione Internet Information Services (IIS).
    • Se si usa Windows Vista o Windows 7:

      • Sulla barra delle applicazioni fare clic su Start e quindi su Pannello di controllo.
      • Fare doppio clic su Strumenti di amministrazione, quindi fare doppio clic su Gestione Internet Information Services (IIS).
  2. Nel riquadro Connessioni fare clic sul nome del server.

  3. Nel riquadro Home fare doppio clic sulla funzionalità Editor di configurazione .
    Screenshot del riquadro Home con la funzionalità Editor di configurazione evidenziata.

  4. Nel menu a discesa Sezione espandere system.applicationHost e quindi fare clic su serviceAutoStartProviders.
    Screenshot della schermata Editor di configurazione che mostra il menu a discesa Sezione.

  5. Fare clic sui puntini di sospensione (...) sul lato destro del campo (Raccolta).

  6. Nel riquadro Azioni fare clic su Aggiungi.

  7. Quando viene visualizzata la finestra di dialogo Editor raccolta:

    • Immettere il nome del provider di avvio automatico nel campo nome . Ad esempio:
      "MyAutostartProvider"
    • Immettere il tipo gestito dell'assembly di avvio automatico nel campo tipo . Ad esempio:
      "MyAutostartProvider, MyAutostartProvider, version=1.0.0.0, Culture=neutral, PublicKeyToken=426f62526f636b73"
    • Chiudere la finestra di dialogo Editor raccolta.
      Screenshot della finestra di dialogo Editor raccolta.
  8. Nel riquadro Azioni fare clic su Applica.

Nota

Questa sezione contiene informazioni su come modificare le impostazioni di IIS tramite l'Editor di configurazione IIS. La modifica errata delle impostazioni di configurazione di IIS può danneggiare gravemente l'installazione di IIS. Verificare quindi di attenersi attentamente alla procedura. Per una maggiore sicurezza, è necessario eseguire il backup delle impostazioni di configurazione di IIS prima di usare l'Editor configurazione IIS per apportare eventuali modifiche. Per altre informazioni su come eseguire il backup delle impostazioni di configurazione di IIS e su come usare l'Editor configurazione IIS, vedere gli argomenti seguenti:

Configurazione

L'elemento <add> dell'elemento <serviceAutoStartProviders> viene configurato a livello globale nel file ApplicationHost.config.

Attributi

Attributo Descrizione
name Attributo stringa facoltativo.

Specifica il nome descrittivo per un provider di avvio automatico.

Non è previsto alcun valore predefinito.
type Attributo stringa facoltativo.

Specifica il tipo gestito per un assembly del provider di avvio automatico.

Non è previsto alcun valore predefinito.

Elementi figlio

Nessuno.

Esempio di configurazione

Nell'esempio seguente viene visualizzato un <serviceAutoStartProviders> elemento che aggiunge un provider di avvio automatico personalizzato alla raccolta.

<serviceAutoStartProviders>
   <add name="MyAutostartProvider" type="MyAutostartProvider, MyAutostartProvider, version=1.0.0.0, Culture=neutral, PublicKeyToken=426f62526f636b73" />
</serviceAutoStartProviders>

Codice di esempio

Gli esempi seguenti aggiungono un provider di esempio alla raccolta di provider di avvio automatico.

AppCmd.exe

appcmd.exe set config -section:system.applicationHost/serviceAutoStartProviders /+"[name='MyAutostartProvider',type='MyAutostartProvider, MyAutostartProvider, version=1.0.0.0, Culture=neutral, PublicKeyToken=426f62526f636b73']" /commit:apphost

Nota

È necessario assicurarsi di impostare il parametro commit su apphost quando si usa AppCmd.exe per configurare queste impostazioni. In questo modo le impostazioni di configurazione vengono confermate nella sezione relativa al percorso appropriato nel file ApplicationHost.config.

C#

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 serviceAutoStartProvidersSection = config.GetSection("system.applicationHost/serviceAutoStartProviders");
         ConfigurationElementCollection serviceAutoStartProvidersCollection = serviceAutoStartProvidersSection.GetCollection();

         ConfigurationElement addElement = serviceAutoStartProvidersCollection.CreateElement("add");
         addElement["name"] = @"MyAutostartProvider";
         addElement["type"] = @"MyAutostartProvider, MyAutostartProvider, version=1.0.0.0, Culture=neutral, PublicKeyToken=426f62526f636b73";
         serviceAutoStartProvidersCollection.Add(addElement);

         serverManager.CommitChanges();
      }
   }
}

VB.NET

Imports System
Imports System.Text
Imports Microsoft.Web.Administration

Module Sample
   Sub Main()
      Dim serverManager As ServerManager = New ServerManager
      Dim config As Configuration = serverManager.GetApplicationHostConfiguration
      Dim serviceAutoStartProvidersSection As ConfigurationSection = config.GetSection("system.applicationHost/serviceAutoStartProviders")
      Dim serviceAutoStartProvidersCollection As ConfigurationElementCollection = serviceAutoStartProvidersSection.GetCollection

      Dim addElement As ConfigurationElement = serviceAutoStartProvidersCollection.CreateElement("add")
      addElement("name") = "MyAutostartProvider"
      addElement("type") = "MyAutostartProvider, MyAutostartProvider, version=1.0.0.0, Culture=neutral, PublicKeyToken=426f62526f636b73"
      serviceAutoStartProvidersCollection.Add(addElement)

      serverManager.CommitChanges()
   End Sub
End Module

JavaScript

var adminManager = new ActiveXObject('Microsoft.ApplicationHost.WritableAdminManager');
adminManager.CommitPath = "MACHINE/WEBROOT/APPHOST";

var serviceAutoStartProvidersSection = adminManager.GetAdminSection("system.applicationHost/serviceAutoStartProviders", "MACHINE/WEBROOT/APPHOST");
var serviceAutoStartProvidersCollection = serviceAutoStartProvidersSection.Collection;

var addElement = serviceAutoStartProvidersCollection.CreateNewElement("add");
addElement.Properties.Item("name").Value = "MyAutostartProvider";
addElement.Properties.Item("type").Value = "MyAutostartProvider, MyAutostartProvider, version=1.0.0.0, Culture=neutral, PublicKeyToken=426f62526f636b73";
serviceAutoStartProvidersCollection.AddElement(addElement);

adminManager.CommitChanges();

VBScript

Set adminManager = createObject("Microsoft.ApplicationHost.WritableAdminManager")
adminManager.CommitPath = "MACHINE/WEBROOT/APPHOST"

Set serviceAutoStartProvidersSection = adminManager.GetAdminSection("system.applicationHost/serviceAutoStartProviders", "MACHINE/WEBROOT/APPHOST")
Set serviceAutoStartProvidersCollection = serviceAutoStartProvidersSection.Collection

Set addElement = serviceAutoStartProvidersCollection.CreateNewElement("add")
addElement.Properties.Item("name").Value = "MyAutostartProvider"
addElement.Properties.Item("type").Value = "MyAutostartProvider, MyAutostartProvider, version=1.0.0.0, Culture=neutral, PublicKeyToken=426f62526f636b73"
serviceAutoStartProvidersCollection.AddElement(addElement)

adminManager.CommitChanges()