Ich habe Scott Guthries Beitrag über den automatischen Start von ASP.NET-Anwendungen gelesen , der Beispiele zum Einrichten einer ASP.NET 4.0-Anwendung für den automatischen Start enthält.
<applicationPools>
<add name="MyAppWorkerProcess" managedRuntimeVersion="v4.0"
startMode="AlwaysRunning" />
</applicationPools>
<!--...-->
<sites>
<site name="MySite" id="1">
<application path="/" serviceAutoStartEnabled="true"
serviceAutoStartProvider="PreWarmMyCache" />
</site>
</sites>
<!--...-->
<serviceAutoStartProviders>
<add name="PreWarmMyCache" type="PreWarmCache, MyAssembly" />
</serviceAutoStartProviders>
Aus seinem Beitrag geht nicht hervor, ob die folgende Konfiguration eine ASP.NET-Anwendung automatisch startet:
<applicationPools>
<add name="MyAppWorkerProcess" managedRuntimeVersion="v4.0"
startMode="AlwaysRunning" />
</applicationPools>
<!--...-->
<sites>
<site name="MySite" id="1">
<application path="/" serviceAutoStartEnabled="true" />
</site>
</sites>
Der Unterschied besteht darin, dass für den Start keine Klasse angegeben ist. Im Idealfall wird die Anwendung nur geladen. Die Dokumentation zur Anwendung für eine Site impliziert, dass für das serviceAutoStartEnabled
Attribut ein serviceAutoStartProvider
Attribut erforderlich ist . Es gibt jedoch keinen Hinweis darauf, was passiert, wenn das zusätzliche Attribut nicht angegeben wird.
- Lese ich die Dokumentation richtig?
- Muss ein
serviceAutoStartProvider
angegeben werden, um verwendet zu werdenserviceAutoStartEnabled
? - Was passiert, wenn nein
serviceAutoStartProvider
angegeben ist?