ServerManager.GetAdministrationConfiguration 在 IIS 7.5 上为空
ServerManager.GetAdministrationConfiguration is empty on IIS 7.5
我想使用 C# ServerManager сlass 管理 IIS(版本 7-10)。
本地 GetAdministrationConfiguration
方法 returns 管理配置中的 1 个部分组和 2 个部分(参见下面的代码)。
但是在远程服务器上有 0 个分区组和 0 个分区。
源代码(需要在C#项目的"Extensions"引用中添加Microsoft.Web.Administration
):
using Microsoft.Web.Administration;
using System;
namespace ConsoleApp7
{
class Program
{
static void Main(string[] args)
{
using (var iisManager = new ServerManager())
{
var c = iisManager.GetAdministrationConfiguration();
Console.WriteLine(c.RootSectionGroup.SectionGroups.Count);
Console.WriteLine(c.RootSectionGroup.Sections.Count);
}
Console.ReadKey();
}
}
}
- 本地机器:Win10、IIS 10.0、.NET framework 4.7.1。
- 远程服务器 #1:Win2008R2、IIS 7.5、.NET Framework 4.7.2。
- 远程服务器 #2:Win7、IIS 7.5、.NET Framework 4.5.2。
在所有机器上 C:\Windows\System32\inetsrv\Config\administration.config
可用并包含所有需要的部分。
如何在远程服务器上获取 IIS 的管理配置?
已解决!基于 MSDN question 我在 C# 项目属性中取消选中 "Prefer 32-bit",现在收到配置。
我想使用 C# ServerManager сlass 管理 IIS(版本 7-10)。
本地 GetAdministrationConfiguration
方法 returns 管理配置中的 1 个部分组和 2 个部分(参见下面的代码)。
但是在远程服务器上有 0 个分区组和 0 个分区。
源代码(需要在C#项目的"Extensions"引用中添加Microsoft.Web.Administration
):
using Microsoft.Web.Administration;
using System;
namespace ConsoleApp7
{
class Program
{
static void Main(string[] args)
{
using (var iisManager = new ServerManager())
{
var c = iisManager.GetAdministrationConfiguration();
Console.WriteLine(c.RootSectionGroup.SectionGroups.Count);
Console.WriteLine(c.RootSectionGroup.Sections.Count);
}
Console.ReadKey();
}
}
}
- 本地机器:Win10、IIS 10.0、.NET framework 4.7.1。
- 远程服务器 #1:Win2008R2、IIS 7.5、.NET Framework 4.7.2。
- 远程服务器 #2:Win7、IIS 7.5、.NET Framework 4.5.2。
在所有机器上 C:\Windows\System32\inetsrv\Config\administration.config
可用并包含所有需要的部分。
如何在远程服务器上获取 IIS 的管理配置?
已解决!基于 MSDN question 我在 C# 项目属性中取消选中 "Prefer 32-bit",现在收到配置。