将自定义任务添加到IIS 7中的网站页面(.5)

时间:2009-08-27 16:59:19

标签: iis-7 extensibility

是否可以将TaskItem(或TaskList)添加到网站页面(Web Objects主页)?

我想提供一些上下文访问我的插件,我似乎无法找到一个很好的集成点。

1 个答案:

答案 0 :(得分:0)

非常感谢IIS.net论坛上CarlosAg提供此答案的基础。

  1. 创建一个子类ProtocolProvider的类,并通过覆盖TaskListGetSiteTaskList让它返回GetSitesTaskList

  2. 在Module.Initialize方法中,从serviceProvider获取IExtensibilityManager

  3. 通过调用RegisterExtension将您的ProtocolProvider实例注册到IExtensibilityManager。

  4. <强>更新

    事实证明,ProtocolProvider只能为“站点”视图提供TaskList,但可以提供不同的TaskList,具体取决于所选的站点(如果有的话)。

    要为网站的主页提供自定义TaskList(即包含功能列表),您需要实施IHomepageTaskListProvider并将其注册到上面提到的IExtensibilityManager

    IHomepageTaskListProvider.GetTaskList实施中,您可以通过从Connection获取IServiceProvider并检查ConfigurationPath.PathType属性来确定当前“主页”是网站还是全局(这是一个ConfigurationPathType枚举)