/// <summary> /// Запрос путей /// </summary> /// <param name="options"></param> private static void GetDirectoryPaths(out UploadDetails options) { Console.WriteLine("Откуда загрузить файлы (полный путь):"); string source = Console.ReadLine(); Console.WriteLine("\nКуда сохранить файлы:"); string receiver = Console.ReadLine(); options = new UploadDetails(source, receiver); }
/// <summary> /// Загрузка файлов на Яндекс.Диск /// </summary> /// <param name="options"></param> /// <param name="diskApi"></param> /// <param name="file"></param> /// <returns></returns> public static async Task GetStartAsync(UploadDetails options, IDiskApi diskApi, FileDetails file) { // формирование запроса пути Link link = await diskApi.Files.GetUploadLinkAsync(options.Receiver + "/" + file.Name, true).ConfigureAwait(false); GetShowMessage(file.Name, "Идет загрузка"); using (FileStream fileStream = File.OpenRead(file.Path)) { // загрузка файлов по указанному пути await diskApi.Files.UploadAsync(link, fileStream); } GetShowMessage(file.Name, "Загружен"); }