Member 13690846 Ответов: 2

Загрузка файла в office 365 с помощью консольного приложения


Всем Привет,

Я пытаюсь подключиться к Office 365 с помощью консольного приложения , пожалуйста, найдите мой cod ebelow. Но я получаю ошибку
Не удается связаться с сайтом по указанному URL адресу http://mysite-my.sharepoint.com

Что я уже пробовал:

using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Security;
using Microsoft.SharePoint.Client;
using System.Net;
using Microsoft.SharePoint;

namespace OneDrive
{
    class Program
    {
        
        static void Main(string[] args)
        {
            GetSiteLists();
            Console.ReadLine();
        }
        
        class configuration
        {
            public static string o365SiteUrl = "http://mysite-my.sharepoint.com";
            public static string o365UserName = "username";
            public static string o365Password = "pwd";
            public static string o365Domain = "domail";
           
        }
        static ClientContext GetUserContext()
        {
            var o365password = new SecureString();
            foreach (char c in configuration.o365Password)
            {
                o365password.AppendChar(c);
            }
            // var o365Credentials = new SharePointOnlineCredentials(configuration.o365UserName, o365password);
           NetworkCredential o365Credentials = new NetworkCredential(configuration.o365UserName, o365password, configuration.o365Domain );
           

            ClientContext o365Context = new ClientContext(configuration.o365SiteUrl);
            System.Net.ServicePointManager.ServerCertificateValidationCallback =
        ((sender, certificate, chain, sslPolicyErrors) => true);

            o365Context.Credentials  = o365Credentials;
            return o365Context;
        }
        static void GetSiteLists()
        {
            var clientContext = GetUserContext();
            //clientContext.ExecutingWebRequest += clientContext_ExecutingWebRequest;
            var results = clientContext.LoadQuery(clientContext.Web.Lists.Include(List => List.Title, List => List.Id ));
            clientContext.ExecuteQuery();
            results.ToList().ForEach(x =>
            {
                Console.WriteLine(x.Title);
            });
            clientContext.Dispose();



        }
    

    }

2 Ответов

Рейтинг:
11

Member 13690846

Я много чего перепробовал, но безуспешно. Поэтому я попробовал использовать Microsoft Graph, и он отлично сработал.


Рейтинг:
1

Maciej Los

Цитата:
Вы можете использовать свой личный сайт для обмена информацией и общения с другими людьми для создания своей профессиональной сети. В этой статье описаны некоторые ключевые функции и приведены некоторые шаги, которые помогут вам начать работу.


Как описано выше, вам необходимо настроить свой сайт sharepoint. Я бы настоятельно рекомендовал прочитать следующие статьи:
Начало работы с вашим личным сайтом - SharePoint[^]
Настройка личных сайтов в SharePoint Server 2013[^]


Member 13690846

Привет Мацей Лос,
Спасибо за ответ. Я могу получить доступ к o365SiteUrl с переднего конца, и он работает нормально. Любая другая конфигурация, которую мне нужно сделать, чтобы подключиться через консольное приложение?

Maciej Los

Я понятия не имею. Кажется, вам нужно перейти на страницу входа в систему, чтобы авторизовать свой вход, а затем на свой сайт.

Member 13690846

И упомянутый URL-адрес в образце кода является фиктивным, а не фактическим.