.Net 3.5 中的 Microsoft.Web.Management 和 System.DirectoryServices 有什么区别?
我想使用 WMI 和 .Net 通过 ASP.Net Web 应用程序控制、配置和操作 IIS 6.0 及更高版本。
- 我可以混合使用 Microsoft.Web.Management 和 System.DirectoryServices 吗?
- 两者有区别吗?
- 更高版本的 IIS 将支持 System.DirectoryServices。即 IIS 7.0+ ?
- 两者中哪个更好?为什么(考虑第 #01 行的目标)?
多谢。
问候
I want to control, configure and manipulate IIS 6.0 and later versions via ASP.Net web application using WMI and .Net.
- Can i use a mix of Microsoft.Web.Management and System.DirectoryServices?
- Is there a difference between the two?
- Will System.DirectoryServices be supported for later versions of IIS. i.e IIS 7.0+ ?
- Where is the better of the two and why (considering the objective in line #01)?
Thanks a lot.
Regards
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
您不能使用
Microsoft.Web.Administration
命名空间来配置和管理 IIS6。从 .NET 角度来看,您的选择是 System.DirectoryServices、WMI,或者,如果您真的喜欢冒险的话,可以选择 ABO(IIS 管理基础对象)。在 IIS7 中,您可以使用
Microsoft.Web.Administration
和其他 IIS7 托管代码管理库,实际上这是首选方法,因为这些组件完全了解 IIS7 的所有新功能。如果您有一些没有时间移植或无法移植的旧代码或工具(因为您无权访问源代码),则可以安装 IIS6 兼容性组件。这些使您可以访问 System.DirectoryServices 和 WMI 包装的旧式 ADSI API。事实上,它们还安装了旧的
ADSUTIL.vbs
脚本,该脚本用于在 IIS6 上执行各种管理任务。IIS7 上的 IIS6 兼容性组件只是包装了对 IIS7 管理库的访问。他们做得相当不错,但不知道 IIS7 中存在但 IIS6 中不存在的新管理功能。
简而言之,在理想的情况下,您应该继续使用 System.DirectoryServices 或 WMI 来管理 IIS6。对于 IIS7,您的首选项应该是
Microsoft.Web.Administration
及其朋友。You can't use the
Microsoft.Web.Administration
namespace to configure and manage IIS6. Your options from a .NET perspective areSystem.DirectoryServices
, WMI or, if you're feeling really adventurous ABO (IIS Admin Base Objects).In IIS7 you can use
Microsoft.Web.Administration
and the other IIS7 Managed Code Administration libraries, in fact this is the preferred method because these components are fully aware of all of the new IIS7 features.If you have some legacy code or tools that you don't have time to port, or can't (because you don't have access to the source), you can install the IIS6 compatibility components. These provide you with access to the old style ADSI API which
System.DirectoryServices
and WMI wrap. In fact these also install the oldADSUTIL.vbs
script which is used to perform various management tasks on IIS6.The IIS6 compatibility components on IIS7 simply wrap access to the IIS7 management libraries. They do a fairly good job, but are not aware of new management features that exist in IIS7 but not in IIS6.
So in a nutshell, in an ideal world you should continue to manage IIS6 using
System.DirectoryServices
or WMI. For IIS7 your preference should beMicrosoft.Web.Administration
and its friends.