Загрузка в команды с помощью C # и Powershell

#c# #powershell #office365 #microsoft-teams

#c# #powershell #office365 #microsoft-команды

Вопрос:

Я пишу форму, которая будет загружать любой файл в папке в общий ресурс Microsoft Teams. Моему коду уже удается загружать файлы, но он продолжает показывать мне журнал в форме microsoft 365 для каждого файла, вместо этого запрашивая только в первый раз.

это код:

 private void Upload()
    {
        Runspace runspace = RunspaceFactory.CreateRunspace();
        runspace.Open();

        PowerShell psinstance = PowerShell.Create();
  
 //fill some vars and connect (once, hopefully)

            psinstance.AddScript("$SharepointURL = '"   LINK-TO-THE-DESIRED-TEAM   "'");
            psinstance.AddScript("$OutPath = '"   SOURCE-DIRECTORY   "'");
            psinstance.AddScript("Connect-PnPOnline -SPOManagementShell -url $SharepointURL -cleartokencache");
  
 //upload each file in the directory
            psinstance.AddScript("$Files = Get-ChildItem -path $OutPath");
            psinstance.AddScript("foreach ($File in $Files){ Add-PnPFile -Folder '"   DESIRED-CHANNEL-DIRECTORY   "' -Path $File.FullName }");
  
 //execute the script
            Collection <PSObject> results = psinstance.Invoke();

//get possible errors
            Collection<ErrorRecord> Errors = psinstance.Streams.Error.ReadAll();
  
             runspace.Close();
            }
  

Тот же код powershell, если он выполняется в консоли powershell, работает как шарм. Это сводит меня с ума, вы можете мне помочь?

Комментарии:

1. Работает ли это при удалении параметра «-cleartokencache»?

2. Я должен попробовать это прямо сейчас, и я могу сказать вам, что это действительно работает, удаляя его! однако теперь мне нужен способ очистить любой ранее созданный токен перед выполнением кода, иначе он сохранит все, что найдет: (

3. Почему вы не используете Microsoft Graph Api?