gpt4 book ai didi

sharepoint - 如何将 SharePoint 2007 功能挂接到网站的 Application_Start?

转载 作者:行者123 更新时间:2023-12-04 16:38:02 25 4
gpt4 key购买 nike

我想知道在开发功能时是否有一种很好的方法可以连接到 SharePoint 2007 网站的 Application_Start?我知道我可以直接在站点根目录中编辑 Global.asax 文件,但是有没有办法做到这一点,以便使用该功能进行部署?

谢谢!

最佳答案

这实际上是可能的,但它不涉及 Global.asax 文件。

Microsoft 的许多示例都演示了通过 Global.asax 连接代码,但这并不是 SharePoint 的最佳实践方法。理想情况下,您的代码应该打包为功能并通过 WSP 进行部署(如您所知)。

关键在于将相关代码实现为 HttpModule(即实现 IHttpModule 接口(interface)的类型)并将其连接到为您的 SharePoint 应用程序提供服务的 ASP.NET 管道中。粗略地说,这些是步骤:

  • 创建一个实现 IHttpModule 接口(interface)的类。
  • 在你的 HttpModule 中实现 Init 方法;这是在设置 HttpApplication(在本例中为 SPHttpApplication)时调用的,它使您有机会执行处理、为其他管道事件连接事件委托(delegate)等。
  • 创建一个 SPFeatureReceiver,它将分别在激活和停用时从目标 web.config 文件中添加和删除您的 HttpModule。这是使用 SPWebConfigModification 类型更新目标 web.config 文件中的 节点来执行的。
  • 将所有内容打包为功能并通过 WSP 进行部署。

  • 有关 HttpModule 开发的更多信息,请参阅 http://msdn.microsoft.com/en-us/library/ms227673.aspx .有关 SPWebConfigModification 类型的更多详细信息,请参阅 http://msdn.microsoft.com/en-us/library/microsoft.sharepoint.administration.spwebconfigmodification.aspx .

    结果:一个可以处理应用程序启动并且可以通过 Feature 部署的类。无需手动破解文件。

    我已经在许多场景中成功地使用了它——最近一次是使用自定义缓存提供程序 (IVaryByCustomHandler),它需要在 SPHttpApplication 启动时为回调注册自身。

    虽然你的问题有点老了,但我希望这会有所帮助!

    关于sharepoint - 如何将 SharePoint 2007 功能挂接到网站的 Application_Start?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/122205/

    25 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com