【问题标题】:Debugging Feature Activation in SharePoint 2010在 SharePoint 2010 中调试功能激活
【发布时间】:2013-03-15 15:26:33
【问题描述】:

我使用 sharepoint 2010+ VS 2010 中的功能接收器类创建了一个简单的功能。 但我无法调试激活和停用方法。 这些是我正在遵循的以下步骤:

  1. 将接收器类添加到功能。
  2. 将活动部署配置更新为:无激活
  3. 在调试模式下构建解决方案。
  4. 将程序集从 BIN 拖放到 GAC 文件夹。
  5. 部署解决方案。
  6. IIS 重置
  7. 调试器>>附加到进程>>w3wp 8.激活功能

解决方案进入调试模式,但即使功能成功触发,调试器也没有在调试点停止。 请帮忙..

【问题讨论】:

  • 您应该能够在不手动复制程序集的情况下进行调试:如果您在项目选项中设置了 SharePoint 站点 URL,则 F5 应该就足够了。这是农场解决方案吗?默认为 Sandbox,其代码不在 w3wp 中运行,而是在 SPUCWorkerProcess 中运行。

标签: sharepoint


【解决方案1】:

如果您遇到上述问题,请记住您可以随时写入事件日志。

通常您正在调试,因为您对特定区域的代码保持警惕。有时我将它们放入我的代码中,这样我就可以通过代码跟踪值是什么,并将信息事件写入应用程序日志。

C# if/then directives for debug vs release

当你切换代码释放时,上面的代码会被跳过,无关紧要。

希望这会有所帮助。

【讨论】:

    【解决方案2】:

    确保在功能模板.xml 文件中明确指定功能接收器的类名和程序集,这是接收器代码启动的方式 这是模板的一个示例:

    <?xml version="1.0" encoding="utf-8" ?>
    <Feature xmlns="http://schemas.microsoft.com/sharepoint/"
             Scope="Web"
             Id="guid"
             ReceiverAssembly="FullAssemblyName"
             ReceiverClass="FullClassName">
    </Feature>
    

    第

    【讨论】:

      【解决方案3】:

      您错过了一个微小但重要的步骤。特别是如果您是要部署到的 SharePoint 场的唯一用户。

      1. 重新加载 SharePoint 页面。

      原因是在 IIS 重置后,您已经终止了 SharePoint IIS 进程。您需要再次加载它才能正确地将 Visual Studio 附加到它。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2012-05-16
        • 1970-01-01
        • 1970-01-01
        • 2011-02-03
        • 2012-05-25
        相关资源
        最近更新 更多