C#迭代';默认文档';IIS 7功能

C#迭代';默认文档';IIS 7功能,c#,iis-7,C#,Iis 7,如何在C#中的应用程序的“默认文档”IIS功能中迭代文件名 我正在使用Microsoft.Web.Administration.ServerManager 感谢您可以使用其“松散”类型的模型来完成此操作,基本上是为了在默认网站中阅读它: using (ServerManager serverManager = new ServerManager()) { Configuration webConfig = serverManager.GetWebConfiguration("Defaul

如何在C#中的应用程序的“默认文档”IIS功能中迭代文件名

我正在使用Microsoft.Web.Administration.ServerManager

感谢

您可以使用其“松散”类型的模型来完成此操作,基本上是为了在默认网站中阅读它:

using (ServerManager serverManager = new ServerManager())
{
    Configuration webConfig = serverManager.GetWebConfiguration("Default Web Site");
    ConfigurationSection section = webConfig.GetSection("system.webServer/defaultDocument");
    foreach (ConfigurationElement item in section.GetCollection("files"))
    {
        Console.WriteLine(item["value"]);
    }
}
using (ServerManager serverManager = new ServerManager())
{
    Configuration webConfig = serverManager.GetWebConfiguration("Default Web Site");
    DefaultDocumentSection section = (DefaultDocumentSection)webConfig.GetSection("system.webServer/defaultDocument", typeof(DefaultDocumentSection));
    foreach (FileElement item in section.Files)
    {
        Console.WriteLine(item.Value);
    }
}
您还可以为要经常使用的集合和条目生成强类型包装,这将使其更干净,并防止出现错误,这将使其看起来像:

using (ServerManager serverManager = new ServerManager())
{
    Configuration webConfig = serverManager.GetWebConfiguration("Default Web Site");
    ConfigurationSection section = webConfig.GetSection("system.webServer/defaultDocument");
    foreach (ConfigurationElement item in section.GetCollection("files"))
    {
        Console.WriteLine(item["value"]);
    }
}
using (ServerManager serverManager = new ServerManager())
{
    Configuration webConfig = serverManager.GetWebConfiguration("Default Web Site");
    DefaultDocumentSection section = (DefaultDocumentSection)webConfig.GetSection("system.webServer/defaultDocument", typeof(DefaultDocumentSection));
    foreach (FileElement item in section.Files)
    {
        Console.WriteLine(item.Value);
    }
}
为此,您需要以下“强类型包装器”:

public类DefaultDocumentSection:ConfigurationSection
{
私有文件集合\u文件;
公共文件集合文件
{
得到
{
如果(_files==null)
{
_files=(filescolection)base.GetCollection(“files”,typeof(filescolection));
}
返回_文件;
}
}
}
公共类FileCollection:ConfigurationElementCollectionBase
{
受保护的覆盖FileElement CreateNewElement(string elementTagName)
{
返回新的FileElement();
}
}
公共类FileElement:ConfigurationElement
{
公共字符串值{get{return(string)base[“Value”];}
}