簡體   English   中英

對於ASP.Net中的IIS管理哪個更好:WMI或ADSI或托管API?有什么區別?

[英]Which is better for IIS administration in ASP.Net : WMI or ADSI or Managed API? and what's the difference?

我正在使用基於ASP.Net的Web應用程序配置和操作和控制IIS 6.0及更高版本。 我正在考慮WMI,ADSI,托管API作為我的選擇。

我有一個目標Windows系統WIN2k3或更高版本。 語言的選擇是C#,應用程序必須使用ASP.Net構建。

本文介紹了每種方法,但我對各種方法有點不確定; http://learn.iis.net/page.aspx/283/provisioning-options-in-iis7/rev/1

關於這些選項,我有以下問題。

  1. 對於既定目標哪個更好或更強大? ADSI(System.DirectoryServices)或WMI(Microsoft.Web.Management)或托管API(Microsoft.Web.Administratoion)? 如果我在這里做錯了,請糾正我。

  2. IIS的更高版本可能支持哪種選項或技術?

  3. 哪個選項具有最大的靈活性和可擴展性?
  4. 從哪里可以找到任何建議/選擇的技術的資源?

我不太可能在II5.1或更低版本上工作。 因此兼容性區域從IIS 6.0及更高版本開始。 應用程序必須使用ASP.Net構建,如果不可避免,可以使用未托管代碼。

謝謝

問候

史蒂夫

對於IIS 7及更高版本,您可能需要IIS Management API 我假設您已經閱讀過管理技術MSDN比較 僅考慮一個項目,我會使用您最熟悉的工具。 涉及直接操作IIS元數據庫的所有內容都需要專門的學習努力。

鑒於學習曲線,我選擇使用WMI。 它被廣泛用於IIS之外,掌握它感覺就像是一項很好的投資。 C#很好地支持它。 如果你知道一點PowerShell,你可以使用“gwmi”對象輕松探索它。 如果從.NET使用WMI,請使用托管代碼生成器

對於IIS6,我使用System.DirectoryServices命名空間,它是ADSI的托管包裝器。 與使用IIS WMI提供程序相比,我發現使用起來更簡單。

對於IIS7和Precipitous建議 ,我將使用新的IIS 7托管代碼管理API( Microsoft.Web.Administration等)。 您可以在IIS7上使用IIS6兼容組件,這些組件為消費者維護舊式ADSI API(但是它們是新IIS7組件的包裝器)並且它們主要起作用。

但是,您確實遇到了ADSI包裝器的問題。 例如,他們不知道Handler Mapping(類似於IIS6腳本映射)屬性,例如preConditions ,例如,允許ASP.NET的處理程序映射定義的多個版本共存於同一站點或應用程序中。 ADSI兼容層將創建稱為AboMapperCustom對象的對象,這些對象在其配置中是次優的,並且不了解這些新功能。

有兩個代碼庫(一個用於IIS6,一個用於IIS7)可能看起來很多工作,但說實話,它並不是太糟糕。 我為一個主機工作,一直走在這條路上,我們咬緊牙關,決定我們維護舊的IIS6代碼,但重新開始使用IIS7。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM