如何使用Pnp.com创建网站



我正在尝试使用板条箱封装一个网站。这是代码:

using PnP.Framework;
TeamSiteCollectionCreationInformation modernteamSiteInfo = new TeamSiteCollectionCreationInformation
{
Description = siteDescription,
DisplayName = siteTitle,
Alias = siteUrl.AbsoluteUri,
IsPublic = true,
Lcid = (uint)lcid,
};
var createModernSite = await clientContext.CreateSiteAsync(modernteamSiteInfo);

我真的不确定如何启动ClientContext,因为我认为它应该使用https://tenant-admin.sharepoint.com.如何获取ClientContext对象?

我试图使用当前ClientContext中的相同对象,但我得到了以下错误消息:

除非您提供Microsoft图形访问令牌。。StackTrace:位于PnP.Framework.Sites.SiteCollection.CreateAsync(ClientContextclientContext,TeamSiteCollectionCreationInformation站点集合CreationInformation,Int32延迟AfterCreation,Int32maxRetryCount,Int32 retryDelay,布尔值noWait,字符串graphAccessToken、AzureEnvironment AzureEnvironment(Microsoft.SharePoint.Client.ClientContextExtensions.CreateSiteAsync(ClientContextclientContext,TeamSiteCollectionCreationInformation网站收藏CreationInformation(

您可以像这样使用pnp-core-sdk创建Sharepoint站点。在此之前,您需要对您的应用程序进行身份验证。

var context = await _pnpContextFactory.CreateAsync("Default");

var teamSiteToCreate = new TeamSiteOptions("Demo", "Demo")
{
Description = "My site description",
Language = Language.English,
Owners = new string[] { "test@xyz.onmicrosoft.com" },
};

SiteCreationOptions siteCreationOptions = new SiteCreationOptions()
{
UsingApplicationPermissions = true
};
var create = await context.GetSiteCollectionManager().CreateSiteCollectionAsync(teamSiteToCreate, siteCreationOptions);

return Ok(Create.Uri);

最新更新