2011-06-06 46 views
0

我們希望構建一個管理員清單頁面,該頁面允許我們的網絡管理員快速查看IIS和Web配置中的所有設置,以輕鬆解決問題。網絡配置相當簡單,但我不知道如何從IIS獲取內容。 (應用程序池名稱和類型,機器密鑰,匿名身份驗證等)我確信它可以完成,我只是不知道如何。從ASP.app中讀取IIS設置

感謝,

朗達

回答

1

您正在尋找在IIS的.Net API是暴露的信息。您可以在\ windows \ system32 \ inetsrv中找到它們(它們是Microsoft.Web.Administration.dll,也可能是Microsoft.Web.Management.dll)。

示例代碼,爲每個站點獲取ID和應用程序池名稱:


using System; 
using System.Collections.Generic; 
using System.Linq; 
using System.Text; 
using Microsoft.Web.Administration; 
namespace ConsoleApplication79 
{ 
    class Program 
    { 
     static void Main(string[] args) 
     { 
      ServerManager s = new ServerManager(); 
      var q = s.Sites.Select(aSite => new 
      { 
       ID = aSite.Id, 
       AppPoolName = aSite.Applications.First().ApplicationPoolName 
      }); 
      foreach (var item in q) 
      { 
       Console.WriteLine("ID: {0}, PoolName: {1}", item.ID, item.AppPoolName); 
      } 
     } 
    } 
}