Update
This commit is contained in:
+131
-20
@@ -1,4 +1,6 @@
|
||||
using Microsoft.SharePoint.Client;
|
||||
using Microsoft.SharePoint;
|
||||
using Microsoft.SharePoint.Client;
|
||||
using Microsoft.Online.SharePoint.TenantAdministration;
|
||||
using System;
|
||||
using System.Collections.Concurrent;
|
||||
using System.Net;
|
||||
@@ -14,27 +16,140 @@ namespace SharePointOnlineUtils
|
||||
{
|
||||
public class Program
|
||||
{
|
||||
public static void Main()
|
||||
public static async Task Main()
|
||||
{
|
||||
//Console.WriteLine("Zio Mestre! Son partio");
|
||||
SPConnections();
|
||||
string siteCollection = "https://italsortbuttrio.sharepoint.com";
|
||||
string svcUser = "svcItsSharePointAdmin@italsort.com";
|
||||
SecureString svcUserPsw = new NetworkCredential("", "$O,D1XBp1O5.OdjZt86#a=").SecurePassword;
|
||||
|
||||
ProjectsByYearSite(siteCollection, svcUser, svcUserPsw);
|
||||
|
||||
#region test
|
||||
// Note: The PnP Sites Core AuthenticationManager class also supports this
|
||||
/*Uri site = new Uri(siteCollection);
|
||||
using (var authenticationManager = new AuthenticationManager())
|
||||
using (var ctx = authenticationManager.GetContext(site, svcUser, svcUserPsw))
|
||||
{
|
||||
Web web = ctx.Web;
|
||||
|
||||
//web.Description = "";
|
||||
//web.Update();
|
||||
|
||||
ctx.Load(web,
|
||||
w => w.Title,
|
||||
w => w.Description,
|
||||
w => w.SiteGroups
|
||||
);
|
||||
|
||||
await ctx.ExecuteQueryAsync();
|
||||
|
||||
Console.WriteLine($"Web: {web.Title}");
|
||||
Console.WriteLine($"Description: {web.Description}");
|
||||
Console.WriteLine($"Group: {web.SiteGroups}");
|
||||
}*/
|
||||
#endregion
|
||||
}
|
||||
|
||||
public static async Task SPConnections()
|
||||
public static async Task ProjectsByYearSite(string siteCollection, string user, SecureString psw)
|
||||
{
|
||||
Uri site = new Uri("https://italsortbuttrio.sharepoint.com/");
|
||||
string user = "svcItsSharePointAdmin@italsort.com";
|
||||
SecureString password = new NetworkCredential("", "$O,D1XBp1O5.OdjZt86#a=").SecurePassword;
|
||||
string projectsYear = "Commesse" + DateTime.Now.Year.ToString();
|
||||
Uri site = new Uri(siteCollection + "/sites/" + projectsYear);
|
||||
|
||||
// Note: The PnP Sites Core AuthenticationManager class also supports this
|
||||
using (var authenticationManager = new AuthenticationManager())
|
||||
using (var context = authenticationManager.GetContext(site, user, password))
|
||||
using (var ctx = authenticationManager.GetContext(site, user, psw))
|
||||
{
|
||||
context.Load(context.Web, p => p.Title);
|
||||
//
|
||||
//await context.ExecuteQueryAsync();
|
||||
context.ExecuteQuery();
|
||||
Console.WriteLine($"Title: {context.Web.Title}");
|
||||
if (SPCheck.SiteExist(ctx) != false)
|
||||
{
|
||||
Console.WriteLine($"{projectsYear} - Esiste già.");
|
||||
}
|
||||
else
|
||||
{
|
||||
Console.WriteLine($"{projectsYear} - Non esiste, a breve verrà generata.");
|
||||
SPCheck.ProjectsYearGenerator(site, projectsYear, siteCollection, user, psw);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
public class SPCheck
|
||||
{
|
||||
public static bool SiteExist(ClientContext ctx)
|
||||
{
|
||||
try
|
||||
{
|
||||
Web web = ctx.Web;
|
||||
ctx.Load(web, w => w.Title);
|
||||
ctx.ExecuteQuery();
|
||||
return true;
|
||||
}
|
||||
catch (Exception ex)
|
||||
{
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
||||
public static async Task ProjectsYearGenerator(Uri site, string projectsYear, string sitePath, string user, SecureString psw)
|
||||
{
|
||||
#region old
|
||||
//Uri site = new Uri(siteCollection);
|
||||
//using (var authenticationManager = new AuthenticationManager())
|
||||
//using (var ctx = authenticationManager.GetContext(site, user, psw))
|
||||
//{
|
||||
// try
|
||||
// {
|
||||
// WebCreationInformation creation = new WebCreationInformation()
|
||||
// {
|
||||
// Title = projectsYear,
|
||||
// Url = projectsYear
|
||||
// };
|
||||
//
|
||||
// Web newWeb = ctx.;
|
||||
//
|
||||
// ctx.Load(newWeb, w => w.Title);
|
||||
// ctx.ExecuteQuery();
|
||||
//
|
||||
// Console.WriteLine($"Il sito è stato creato con successo.\n{site}/sites/{projectsYear}");
|
||||
// }
|
||||
// catch (Exception ex)
|
||||
// {
|
||||
// Console.WriteLine($"Non è stato possibile creare la pagina: {ex.Message}");
|
||||
// }
|
||||
//
|
||||
//}
|
||||
#endregion
|
||||
Uri path = new Uri(sitePath);
|
||||
|
||||
using (var authenticationManager = new AuthenticationManager())
|
||||
using (var ctx = authenticationManager.GetContext(path, user, psw))
|
||||
{
|
||||
try
|
||||
{
|
||||
var tenant = new Tenant(ctx);
|
||||
var scp = new SiteCreationProperties();
|
||||
|
||||
scp.Url = site.ToString();
|
||||
scp.Title = projectsYear;
|
||||
scp.Owner = user;
|
||||
|
||||
SpoOperation spo = tenant.CreateSite(scp);
|
||||
ctx.Load(tenant);
|
||||
ctx.Load(spo, i => i.IsComplete);
|
||||
ctx.ExecuteQuery();
|
||||
|
||||
while (!spo.IsComplete)
|
||||
{
|
||||
//Wait for 30 seconds and then try again
|
||||
System.Threading.Thread.Sleep(30000);
|
||||
spo.RefreshLoad();
|
||||
ctx.ExecuteQuery();
|
||||
}
|
||||
|
||||
Console.WriteLine($"Il sito è stato creato con successo.\n{site}");
|
||||
}
|
||||
catch (Exception ex)
|
||||
{
|
||||
Console.WriteLine("Xe da qualcosa storto. " + ex.Message);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -45,7 +160,7 @@ namespace SharePointOnlineUtils
|
||||
private static readonly HttpClient httpClient = new HttpClient();
|
||||
private const string tokenEndpoint = "https://login.microsoftonline.com/common/oauth2/token";
|
||||
|
||||
private const string defaultAADAppId = "986002f6-c3f6-43ab-913e-78cca185c392";
|
||||
private const string defaultAADAppId = "46e6296e-176f-4ebb-a14b-bdd5678c16e6";
|
||||
|
||||
// Token cache handling
|
||||
private static readonly SemaphoreSlim semaphoreSlimTokens = new SemaphoreSlim(1);
|
||||
@@ -227,8 +342,4 @@ namespace SharePointOnlineUtils
|
||||
}
|
||||
}
|
||||
|
||||
public class OrderAutomation
|
||||
{
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
@@ -9,6 +9,8 @@
|
||||
|
||||
<ItemGroup>
|
||||
<PackageReference Include="Microsoft.SharePoint.Client" Version="14.0.4762.1000" />
|
||||
<PackageReference Include="Microsoft.SharePointOnline.CSOM" Version="16.1.22615.12000" />
|
||||
<PackageReference Include="SharePointPnPCoreOnline" Version="3.28.2012" />
|
||||
<PackageReference Include="System.IdentityModel.Tokens.Jwt" Version="6.21.0" />
|
||||
</ItemGroup>
|
||||
|
||||
|
||||
@@ -21,3 +21,69 @@ C:\Sources\VS\console_spo_utils\console_spo_utils\bin\Debug\net6.0\Microsoft.Sha
|
||||
C:\Sources\VS\console_spo_utils\console_spo_utils\bin\Debug\net6.0\Microsoft.SharePoint.Client.dll
|
||||
C:\Sources\VS\console_spo_utils\console_spo_utils\bin\Debug\net6.0\System.IdentityModel.Tokens.Jwt.dll
|
||||
C:\Sources\VS\console_spo_utils\console_spo_utils\obj\Debug\net6.0\console_spo_utils.csproj.CopyComplete
|
||||
C:\Sources\VS\console_spo_utils\console_spo_utils\bin\Debug\net6.0\Microsoft.Office.Client.Policy.dll
|
||||
C:\Sources\VS\console_spo_utils\console_spo_utils\bin\Debug\net6.0\Microsoft.Office.Client.TranslationServices.dll
|
||||
C:\Sources\VS\console_spo_utils\console_spo_utils\bin\Debug\net6.0\Microsoft.Office.SharePoint.Tools.dll
|
||||
C:\Sources\VS\console_spo_utils\console_spo_utils\bin\Debug\net6.0\Microsoft.Online.SharePoint.Client.Tenant.dll
|
||||
C:\Sources\VS\console_spo_utils\console_spo_utils\bin\Debug\net6.0\Microsoft.ProjectServer.Client.dll
|
||||
C:\Sources\VS\console_spo_utils\console_spo_utils\bin\Debug\net6.0\Microsoft.SharePoint.Client.DocumentManagement.dll
|
||||
C:\Sources\VS\console_spo_utils\console_spo_utils\bin\Debug\net6.0\Microsoft.SharePoint.Client.Publishing.dll
|
||||
C:\Sources\VS\console_spo_utils\console_spo_utils\bin\Debug\net6.0\Microsoft.SharePoint.Client.Search.Applications.dll
|
||||
C:\Sources\VS\console_spo_utils\console_spo_utils\bin\Debug\net6.0\Microsoft.SharePoint.Client.Search.dll
|
||||
C:\Sources\VS\console_spo_utils\console_spo_utils\bin\Debug\net6.0\Microsoft.SharePoint.Client.Taxonomy.dll
|
||||
C:\Sources\VS\console_spo_utils\console_spo_utils\bin\Debug\net6.0\Microsoft.SharePoint.Client.UserProfiles.dll
|
||||
C:\Sources\VS\console_spo_utils\console_spo_utils\bin\Debug\net6.0\Microsoft.SharePoint.Client.WorkflowServices.dll
|
||||
C:\Sources\VS\console_spo_utils\console_spo_utils\bin\Debug\net6.0\AngleSharp.dll
|
||||
C:\Sources\VS\console_spo_utils\console_spo_utils\bin\Debug\net6.0\System.Net.Http.Formatting.dll
|
||||
C:\Sources\VS\console_spo_utils\console_spo_utils\bin\Debug\net6.0\System.Web.Http.dll
|
||||
C:\Sources\VS\console_spo_utils\console_spo_utils\bin\Debug\net6.0\Microsoft.Azure.ActiveDirectory.GraphClient.dll
|
||||
C:\Sources\VS\console_spo_utils\console_spo_utils\bin\Debug\net6.0\Microsoft.Azure.KeyVault.Core.dll
|
||||
C:\Sources\VS\console_spo_utils\console_spo_utils\bin\Debug\net6.0\Microsoft.Data.Edm.dll
|
||||
C:\Sources\VS\console_spo_utils\console_spo_utils\bin\Debug\net6.0\Microsoft.Data.OData.dll
|
||||
C:\Sources\VS\console_spo_utils\console_spo_utils\bin\Debug\net6.0\Microsoft.Data.Services.Client.dll
|
||||
C:\Sources\VS\console_spo_utils\console_spo_utils\bin\Debug\net6.0\Microsoft.Graph.dll
|
||||
C:\Sources\VS\console_spo_utils\console_spo_utils\bin\Debug\net6.0\Microsoft.Graph.Core.dll
|
||||
C:\Sources\VS\console_spo_utils\console_spo_utils\bin\Debug\net6.0\Microsoft.IdentityModel.dll
|
||||
C:\Sources\VS\console_spo_utils\console_spo_utils\bin\Debug\net6.0\Microsoft.IdentityModel.Clients.ActiveDirectory.Platform.dll
|
||||
C:\Sources\VS\console_spo_utils\console_spo_utils\bin\Debug\net6.0\Microsoft.IdentityModel.Clients.ActiveDirectory.dll
|
||||
C:\Sources\VS\console_spo_utils\console_spo_utils\bin\Debug\net6.0\Newtonsoft.Json.dll
|
||||
C:\Sources\VS\console_spo_utils\console_spo_utils\bin\Debug\net6.0\SharePointPnP.IdentityModel.Extensions.dll
|
||||
C:\Sources\VS\console_spo_utils\console_spo_utils\bin\Debug\net6.0\OfficeDevPnP.Core.dll
|
||||
C:\Sources\VS\console_spo_utils\console_spo_utils\bin\Debug\net6.0\System.Spatial.dll
|
||||
C:\Sources\VS\console_spo_utils\console_spo_utils\bin\Debug\net6.0\Microsoft.WindowsAzure.Storage.dll
|
||||
C:\Sources\VS\console_spo_utils\console_spo_utils\bin\Debug\net6.0\de\Microsoft.Data.Edm.resources.dll
|
||||
C:\Sources\VS\console_spo_utils\console_spo_utils\bin\Debug\net6.0\es\Microsoft.Data.Edm.resources.dll
|
||||
C:\Sources\VS\console_spo_utils\console_spo_utils\bin\Debug\net6.0\fr\Microsoft.Data.Edm.resources.dll
|
||||
C:\Sources\VS\console_spo_utils\console_spo_utils\bin\Debug\net6.0\it\Microsoft.Data.Edm.resources.dll
|
||||
C:\Sources\VS\console_spo_utils\console_spo_utils\bin\Debug\net6.0\ja\Microsoft.Data.Edm.resources.dll
|
||||
C:\Sources\VS\console_spo_utils\console_spo_utils\bin\Debug\net6.0\ko\Microsoft.Data.Edm.resources.dll
|
||||
C:\Sources\VS\console_spo_utils\console_spo_utils\bin\Debug\net6.0\ru\Microsoft.Data.Edm.resources.dll
|
||||
C:\Sources\VS\console_spo_utils\console_spo_utils\bin\Debug\net6.0\zh-Hans\Microsoft.Data.Edm.resources.dll
|
||||
C:\Sources\VS\console_spo_utils\console_spo_utils\bin\Debug\net6.0\zh-Hant\Microsoft.Data.Edm.resources.dll
|
||||
C:\Sources\VS\console_spo_utils\console_spo_utils\bin\Debug\net6.0\de\Microsoft.Data.OData.resources.dll
|
||||
C:\Sources\VS\console_spo_utils\console_spo_utils\bin\Debug\net6.0\es\Microsoft.Data.OData.resources.dll
|
||||
C:\Sources\VS\console_spo_utils\console_spo_utils\bin\Debug\net6.0\fr\Microsoft.Data.OData.resources.dll
|
||||
C:\Sources\VS\console_spo_utils\console_spo_utils\bin\Debug\net6.0\it\Microsoft.Data.OData.resources.dll
|
||||
C:\Sources\VS\console_spo_utils\console_spo_utils\bin\Debug\net6.0\ja\Microsoft.Data.OData.resources.dll
|
||||
C:\Sources\VS\console_spo_utils\console_spo_utils\bin\Debug\net6.0\ko\Microsoft.Data.OData.resources.dll
|
||||
C:\Sources\VS\console_spo_utils\console_spo_utils\bin\Debug\net6.0\ru\Microsoft.Data.OData.resources.dll
|
||||
C:\Sources\VS\console_spo_utils\console_spo_utils\bin\Debug\net6.0\zh-Hans\Microsoft.Data.OData.resources.dll
|
||||
C:\Sources\VS\console_spo_utils\console_spo_utils\bin\Debug\net6.0\zh-Hant\Microsoft.Data.OData.resources.dll
|
||||
C:\Sources\VS\console_spo_utils\console_spo_utils\bin\Debug\net6.0\de\Microsoft.Data.Services.Client.resources.dll
|
||||
C:\Sources\VS\console_spo_utils\console_spo_utils\bin\Debug\net6.0\es\Microsoft.Data.Services.Client.resources.dll
|
||||
C:\Sources\VS\console_spo_utils\console_spo_utils\bin\Debug\net6.0\fr\Microsoft.Data.Services.Client.resources.dll
|
||||
C:\Sources\VS\console_spo_utils\console_spo_utils\bin\Debug\net6.0\it\Microsoft.Data.Services.Client.resources.dll
|
||||
C:\Sources\VS\console_spo_utils\console_spo_utils\bin\Debug\net6.0\ja\Microsoft.Data.Services.Client.resources.dll
|
||||
C:\Sources\VS\console_spo_utils\console_spo_utils\bin\Debug\net6.0\ko\Microsoft.Data.Services.Client.resources.dll
|
||||
C:\Sources\VS\console_spo_utils\console_spo_utils\bin\Debug\net6.0\ru\Microsoft.Data.Services.Client.resources.dll
|
||||
C:\Sources\VS\console_spo_utils\console_spo_utils\bin\Debug\net6.0\zh-Hans\Microsoft.Data.Services.Client.resources.dll
|
||||
C:\Sources\VS\console_spo_utils\console_spo_utils\bin\Debug\net6.0\zh-Hant\Microsoft.Data.Services.Client.resources.dll
|
||||
C:\Sources\VS\console_spo_utils\console_spo_utils\bin\Debug\net6.0\de\System.Spatial.resources.dll
|
||||
C:\Sources\VS\console_spo_utils\console_spo_utils\bin\Debug\net6.0\es\System.Spatial.resources.dll
|
||||
C:\Sources\VS\console_spo_utils\console_spo_utils\bin\Debug\net6.0\fr\System.Spatial.resources.dll
|
||||
C:\Sources\VS\console_spo_utils\console_spo_utils\bin\Debug\net6.0\it\System.Spatial.resources.dll
|
||||
C:\Sources\VS\console_spo_utils\console_spo_utils\bin\Debug\net6.0\ja\System.Spatial.resources.dll
|
||||
C:\Sources\VS\console_spo_utils\console_spo_utils\bin\Debug\net6.0\ko\System.Spatial.resources.dll
|
||||
C:\Sources\VS\console_spo_utils\console_spo_utils\bin\Debug\net6.0\ru\System.Spatial.resources.dll
|
||||
C:\Sources\VS\console_spo_utils\console_spo_utils\bin\Debug\net6.0\zh-Hans\System.Spatial.resources.dll
|
||||
C:\Sources\VS\console_spo_utils\console_spo_utils\bin\Debug\net6.0\zh-Hant\System.Spatial.resources.dll
|
||||
|
||||
@@ -51,6 +51,14 @@
|
||||
"target": "Package",
|
||||
"version": "[14.0.4762.1000, )"
|
||||
},
|
||||
"Microsoft.SharePointOnline.CSOM": {
|
||||
"target": "Package",
|
||||
"version": "[16.1.22615.12000, )"
|
||||
},
|
||||
"SharePointPnPCoreOnline": {
|
||||
"target": "Package",
|
||||
"version": "[3.28.2012, )"
|
||||
},
|
||||
"System.IdentityModel.Tokens.Jwt": {
|
||||
"target": "Package",
|
||||
"version": "[6.21.0, )"
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
Reference in New Issue
Block a user