Service Autostart Providers <serviceAutoStartProviders>
Übersicht
Das <serviceAutoStartProviders>
Element gibt eine Auflistung von verwalteten Assemblys an, die vom Windows Process Activation Service (WAS) automatisch geladen werden, wenn das startMode
Attribut eines Anwendungspools auf AlwaysRunning
eingestellt ist. Mit dieser Auflistung können Entwickler Assemblys angeben, die Initialisierungsaufgaben ausführen, bevor HTTP-Anforderungen bearbeitet werden. Beispielsweise kann ein Anwendungsentwickler die anfänglichen Datenbankverbindungen für die Anwendung einrichten, bevor IIS mit der Anforderungsverarbeitung beginnt. Dadurch kann die Anwendung Erstanforderungen, die Zugriffe auf eine Datenbank erfordern, schneller ausführen.
Weitere Informationen zum Konfigurieren von Anwendungspools für den automatischen Start finden Sie im <applicationPools>
Thema.
Hinweis
Dieses Element wurde in IIS 7.5 eingeführt.
Kompatibilität
Version | Hinweise |
---|---|
IIS 10.0 | Das <serviceAutoStartProviders> Element wurde in IIS 10.0 nicht geändert. |
IIS 8.5 | Das <serviceAutoStartProviders> Element wurde in IIS 8.5 nicht geändert. |
IIS 8.0 | Das <serviceAutoStartProviders> Element wurde in IIS 8.0 nicht geändert. |
IIS 7.5 | Das <serviceAutoStartProviders> Element wurde in IIS 7.5 eingeführt. |
IIS 7.0 | N/V |
IIS 6.0 | N/V |
Setup
Das <serviceAutoStartProviders>
Element ist in der Standardinstallation von IIS 7.5 enthalten.
Gewusst wie
Konfigurieren eines Service Autostart Provider
Hinweis
Es gibt keine direkte Benutzeroberfläche, über die Sie das <serviceAutoStartProviders>
Element konfigurieren können. Daher verwenden die folgenden Schritte das IIS-Konfigurations-Editor-Feature.
Öffnen Sie den Internet Information Services (IIS) Manager:
Wenn Sie Windows Server 2012 oder Windows Server 2012 R2 verwenden:
- Klicken Sie in der Taskleiste auf Server-Manager, dann auf Tools und dann auf den Internet Information Services (IIS) Manager.
Wenn Sie Windows 8 oder Windows 8.1 verwenden:
- Halten Sie die Windows-Taste gedrückt, drücken Sie den Buchstaben X, und klicken Sie dann auf Systemsteuerung.
- Klicken Sie auf Verwaltung und doppelklicken Sie dann auf den Internet Information Services (IIS) Manager.
Wenn Sie Windows Server 2008 oder Windows Server 2008 R2 verwenden:
- Klicken Sie auf der Taskleiste auf Start, zeigen Sie auf Verwaltung und dann auf den Internet Information Services (IIS) Manager.
Wenn Sie Windows Vista oder Windows 7 verwenden:
- Klicken Sie auf der Taskleiste auf Start und dann auf Systemsteuerung.
- Doppelklicken Sie auf Verwaltung und doppelklicken Sie dann auf den Internet Information Services (IIS) Manager.
Klicken Sie im Bereich Verbindungen auf den Servernamen.
Doppelklicken Sie im Startbereich auf das Feature Konfigurations-Editor.
Erweitern Sie im Dropdownmenü Abschnittsystem.applicationHost , und klicken Sie dann aufserviceAutoStartProviders.
Klicken Sie auf der rechten Seite des Felds (Auflistung) auf die Auslassungspunkte ( ... ).
Klicken Sie im Bereich Aktionen auf hinzufügen.
Wenn das Dialogfeld Auflistungs-Editor angezeigt wird:
- Geben Sie den Namen Ihres Autostartanbieters in das Namensfeld ein. Zum Beispiel:
"MyAutostartProvider" - Geben Sie den verwalteten Typ Ihrer AutoStartassembly in das Typfeld ein. Zum Beispiel:
"MyAutostartProvider, MyAutostartProvider, version=1.0.0.0, Culture=neutral, PublicKeyToken=426f62526f636b73" - Schließen Sie das Auflistungs-Editor Dialogfeld.
- Geben Sie den Namen Ihres Autostartanbieters in das Namensfeld ein. Zum Beispiel:
Klicken Sie im Bereich Aktionen auf Übernehmen.
Hinweis
Dieser Abschnitt enthält Informationen zum Ändern Ihrer IIS-Einstellungen mithilfe des IIS-Konfigurations-Editors. Die falsche Bearbeitung Ihrer IIS-Konfigurationseinstellungen kann ihre IIS-Installation erheblich beschädigen. Daher müssen Sie sicherstellen, dass Sie diese Schritte sorgfältig ausführen. Zur zusätzlichen Sicherheit sollten Sie Ihre IIS-Konfigurationseinstellungen sichern, bevor Sie den IIS-Konfigurations-Editor verwenden, um Änderungen vorzunehmen. Weitere Informationen zum Sichern Ihrer IIS-Konfigurationseinstellungen und zur Verwendung des IIS-Konfigurations-Editors finden Sie in den folgenden Themen:
- So sichern Sie eine IIS 7-Konfiguration
https://technet.microsoft.com/library/dd819406.aspx - Konfigurations-Editor Seite
https://technet.microsoft.com/library/dd569081.aspx
Konfiguration
Das <serviceAutoStartProviders>
Element wird auf globaler Ebene in der Datei ApplicationHost.config konfiguriert.
Attribute
Keine
Untergeordnete Elemente
Element | Beschreibung |
---|---|
add |
Optionales Element. Fügt der Auflistung von Autostartanbietern einen Anbieter hinzu. |
clear |
Optionales Element. Löscht die Auflistung von Autostartanbietern. |
remove |
Optionales Element. Entfernt einen Anbieter aus der Auflistung von Autostartanbietern. |
Konfigurationsbeispiel
Im folgenden Beispiel wird ein <serviceAutoStartProviders>
Element angezeigt, das der Auflistung einen benutzerdefinierten Autostartanbieter hinzufügt.
<serviceAutoStartProviders>
<add name="MyAutostartProvider" type="MyAutostartProvider, MyAutostartProvider, version=1.0.0.0, Culture=neutral, PublicKeyToken=426f62526f636b73" />
</serviceAutoStartProviders>
Beispielcode
In den folgenden Beispielen wird der Auflistung von Autostartanbietern ein Beispielanbieter hinzugefügt.
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
Hinweis
Sie müssen unbedingt den Commitparameter auf apphost
festlegen, wenn Sie AppCmd.exe verwenden, um diese Einstellungen zu konfigurieren. Dadurch werden die Konfigurationseinstellungen auf den entsprechenden Speicherortabschnitt in der Datei ApplicationHost.config festgelegt.
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()