1

我正在AppsSharePoint 2013. 我想以编程方式在我的应用程序包中创建多个列表。
这就像用户输入列表的名称,当他单击“创建”按钮时,应在我的应用程序中而不是在 SharePoint 网站中创建具有相同名称的列表。

我创建了一个AutoHosted App使用客户端对象模型技术的方法。

我怎样才能实现这个功能?

4

2 回答 2

1

我找到了解决方案。
当我创建ContextToken对象时,我传递SPHostUrl了请求,但我没有传递,SPAppWebUrl所以使用它获取 AppWebUrl 的令牌,因此它在我的应用程序中创建了列表,而不是在 SharePoint 站点中。

像下面的代码:

var hostWeb = Page.Request["SPAppWebUrl"]; //This will get the URL of AppWeb not SharePoint site...

using (var clientContext = TokenHelper.GetClientContextWithContextToken(hostWeb, ContextToken, Request.Url.Authority))
{
     //Code for creating list or manipulating them...
     //This ClientContext is created for the AppWeb.
}

当我搜索用于创建的代码时,每次我发现hostWeb对象是使用创建的,SPHostUrl因此我问了这个问题。
感谢大家的帮助。

于 2013-06-19T04:57:18.437 回答
0

您可以使用 JavaScript 客户端对象模型在 App 中创建列表。有一个代码示例演示了如何在此处执行此操作:

http://msdn.microsoft.com/en-us/library/jj163201.aspx#BasicOps_SPListCRUD

于 2013-06-18T14:05:14.510 回答