【问题标题】:SharePoint code working in Console but not in Web APISharePoint 代码在控制台中工作,但在 Web API 中不工作
【发布时间】:2015-06-08 08:05:47
【问题描述】:

我将 Microsoft.SharePoint.dll 添加到 控制台 应用程序中并编写了一些 SharePoint 代码,我可以在控制台上看到结果,但是当我创建了一个 Web API project 并添加了相同的代码,它抛出了错误。知道我缺少什么吗? Web API 是否支持 SharePoint 或必须进行调整?

控制台应用程序: 能够获取站点上的警报计数

Web API 应用程序: 这里出现错误...

Update1:在安装了 SharePoint 的同一台服务器上托管控制台和 Web API 应用程序。空引用用于 SPWeb 对象。

Update2:并非所有 SPSite 和 SPWeb 对象的值都没有填充 SharePoint 数据。会返回一些值,例如 SPSite Id,但不是全部。

“函数评估被禁用,因为之前的函数评估超时。您必须继续执行才能重新启用函数评估。”

【问题讨论】:

  • 几个问题。是空的 web 还是 Alerts 对象?您如何对 API 进行身份验证?
  • 第二次更新无关紧要 - 如果您尝试枚举例如。 AllWebs 的延迟是如此之大,以至于调试器超时并拒绝显示其余的方法。这并不意味着它们是空的
  • 您的应用程序池身份是否有权访问此站点?为什么要使用服务器端 SDK 而不是客户端 SDK?
  • @PanagiotisKanavos 没有使用客户端 SDK,我有几个问题。 1 - 我们如何使用带有 Web API 的客户端 SDK。 2- 如果我们使用客户端 SDK 会遇到什么问题?

标签: c# sharepoint asp.net-web-api console-application


【解决方案1】:

通过将 SharePoint Server 端代码放入解决它

RunWithElevatedPrivileges

并使用用于运行 SharePoint Web 应用程序的相同的应用程序池标识

【讨论】:

    猜你喜欢
    • 2020-03-14
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-05-27
    • 2018-11-06
    • 2023-03-06
    • 1970-01-01
    • 2015-04-09
    相关资源
    最近更新 更多