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.
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).
Nel riquadro Connessioni fare clic sul nome del server.
Nel riquadro Home fare doppio clic sulla funzionalità Editor di configurazione .
Nel menu a discesa Sezione espandere system.applicationHost e quindi fare clic su serviceAutoStartProviders.
Fare clic sui puntini di sospensione (...) sul lato destro del campo (Raccolta).
Nel riquadro Azioni fare clic su Aggiungi.
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.
- Immettere il nome del provider di avvio automatico nel campo nome . Ad esempio:
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:
- Come eseguire il backup di una configurazione iis 7
https://technet.microsoft.com/library/dd819406.aspx - Pagina Editor di configurazione
https://technet.microsoft.com/library/dd569081.aspx
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()