This commit is contained in:
Kalarumeth
2022-07-09 10:30:04 +02:00
parent 82f25882aa
commit 5044dc929a
11 changed files with 7923 additions and 28 deletions
Binary file not shown.
Binary file not shown.
Binary file not shown.
+130 -19
View File
@@ -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);
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
// };
//
//await context.ExecuteQueryAsync();
context.ExecuteQuery();
Console.WriteLine($"Title: {context.Web.Title}");
// 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