3

好吧,到目前为止我已经尝试过了。

ClientOM.List list = clientContext.Site.GetCatalog((int)ClientOM.ListTemplateType.SolutionCatalog);
        clientContext.Load(list);
        clientContext.ExecuteQuery();

        ClientOM.ListItemCollection listItemColls = list.GetItems(new ClientOM.CamlQuery());
        clientContext.Load(listItemColls, listItem => listItem.Include(item => item.DisplayName, item => item["Status"]).Where(i => i.DisplayName == "Tzunami Office 365 Sandbox Package"));
        clientContext.ExecuteQuery();

然后我阅读了沙盒解决方案的状态。它给出了沙盒解决方案的状态,即当 wsp 文件未激活时 listItemColls[0]["Status"] 等于 null。

如果未激活,我想激活该解决方案。我该怎么做??

4

2 回答 2

1

我花了一些时间研究这个问题,我不相信有任何程序访问来激活 SharePoint Online 中的沙盒解决方案。

您可以以编程方式将解决方案上传到库中,并且可以激活功能,但所有受支持的 API(客户端 OM、沙盒代码、Web 服务)都不包含激活解决方案的功能。

我个人觉得这有点令人失望,因为这是将自定义的复杂自动化部署构建到 SharePoint Online 中的一个缺失步骤。

您可以做的最好的事情(这将完全不受支持并且可能在未来的任何时候中断)将模拟一个 Web 浏览器执行在 SharePoint Online 中进行身份验证的操作,打开解决方案库并单击相应的 UI激活解决方案的元素。

于 2012-09-19T12:57:01.310 回答
1

我以其他方式做到了。我跟踪请求发送以通过提琴手激活沙盒。只需通过代码复制相同的过程

于 2014-01-20T09:15:37.040 回答