public async Task <IActionResult> CreateSubSiteAsync(CreateSubSiteRequest request) { try { var alias = Guid.NewGuid().ToString(); var siteUrl = await _siteCollectionManager.CreateSubSiteAsync(request); return(Ok(siteUrl)); } catch (Exception ex) { return(BadRequest(ex)); } }
public Task <string> CreateSubSiteAsync(CreateSubSiteRequest request) { using var authmanager = new AuthenticationManager(); using var context = authmanager.GetSharePointOnlineAuthenticatedContextTenant( request.SiteUrl, AppConfigurations.SpoUserAdmin, AppConfigurations.PasswordSecure); var subSite = context.Web.CreateWeb(new SiteEntity { Url = request.Alias, Title = request.Title, Lcid = (uint)request.Language, Description = request.Description, }); return(Task.FromResult(subSite.ServerRelativeUrl)); }
public async Task <string> CreateSubSiteAsync(CreateSubSiteRequest request) { var accessToken = await tokenManager.GetAccessTokenSPOAsync(request.SiteCollection); var accessTokenSecure = accessToken.ToSecureString(); using var authManager = new AuthenticationManager(accessTokenSecure); using var context = authManager.GetContext(request.SiteCollection); var siteEntity = new SiteEntity { Title = request.AliasSubsite, Url = request.AliasSubsite, Description = "Test" }; context.Web.CreateWeb(siteEntity); return($"{request.SiteCollection.RemoveLastSlash()}/{request.AliasSubsite}"); }