Frage

Gibt es eine Möglichkeit, ein Visual Studio 2005 Web Deployment Project zu konfigurieren, dass eine Anwendung in ein benannten Application Pool, anstatt den Standard-App-Pool für eine bestimmte Website zu installieren?

War es hilfreich?

Lösung

Es ist ein guter Artikel beschreibt benutzerdefinierte Aktionen hier: ScottGu Blog

Die Frage, die Sie gefragt wird, auf halbem Wege durch die Kommentare von ‚Ryan‘, leider ist es in VB, aber es sollte nicht schwer zu übersetzen beantwortet über

Private Sub assignApplicationPool(ByVal WebSite As String, ByVal Vdir As String, ByVal appPool As String)
   Try
     Dim IISVdir As New DirectoryEntry(String.Format("IIS://{0}/W3SVC/1/Root/{1}", WebSite, Vdir))
     IISVdir.Properties.Item("AppPoolId").Item(0) = appPool
     IISVdir.CommitChanges()
   Catch ex As Exception
     Throw ex
   End Try
 End Sub

 Private strServer As String = "localhost"
 Private strRootSubPath As String = "/W3SVC/1/Root"
 Private strSchema As String = "IIsWebVirtualDir"
 Public Overrides Sub Install(ByVal stateSaver As IDictionary)
   MyBase.Install(stateSaver)
   Try
     Dim webAppName As String = MyBase.Context.Parameters.Item("TARGETVDIR").ToString
     Dim vdirName As String = MyBase.Context.Parameters.Item("COMMONVDIR").ToString
     Me.assignApplicationPool(Me.strServer, MyBase.Context.Parameters.Item("TARGETVDIR").ToString, MyBase.Context.Parameters.Item("APPPOOL").ToString)
   Catch ex As Exception
     Throw ex
   End Try
 End Sub

... Wo AppPool als Argument in der Custom Action geliefert.

Andere Tipps

Sie können eine Custom verwenden IIS während der Bereitstellung zu ändern, Hier ist ein Artikel, wie es geht: Ändern von Internet-Informationsdienst während des Einsatzes mit benutzerdefinierten Aktionen

Das Beispiel in dem Artikel ist in VB.Net, und zeigt nicht explizit, wie der Application Pool zu ändern, aber es sollte es herauszufinden einfach sein.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top