naveenjain25 Ответов: 2

Загрузка файла из ASP.NET веб-сайт для учетной записи dropbox


Привет,
Я хочу загрузить несколько текстовых файлов с моего C# .Сетевое веб-приложение для учетной записи dropbox. Я создал приложение dropbox, но не получаю четкого представления о том, как это сделать.
Пожалуйста, помогите мне указать шаги для загрузки файлов из C# .Сетевое веб-приложение для учетной записи dropbox.

Спасибо!
Навин

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

Я уже установил Dropbox.Api.dll и еще DropNet.dll из диспетчера пакетов nuget. Буут не знал, как действовать дальше.

2 Ответов

Рейтинг:
0

Graeme_Grant

Возьмите DropBox lib отсюда: .NET - разработчики - Dropbox[^]

Получить ключ API здесь: Вход В Систему - Dropbox[^]

А вот как это делается: .NET - разработчики - Dropbox[^]


Рейтинг:
0

JoshBab

The solution to this is simple and I would highlight the procedure thus:

1.)Create an app from Dropbox App Console. Choose App Folder (this is a preferable option)  or Full Dropbox for Access Type; enter a name for your app (e.g. myapp). Click "Create App" button. 
Another page is displayed, click on "Generate" button under Generated Access Token.
For the rest of this write-up, the generated code will be called "token".

2.)In your Program.cs (assuming you're using Console App), ensure the following namespaces are referenced

using System;
using System.Threading.Tasks;
using Dropbox.Api;
using System.IO;

Then, modify your your code to

class Program
{
  static void Main(string[] args)
  {
     var task = Task.Run(Upload);
     task.Wait();
  }

  static async Task Upload()
  {
    var dbx = new DropboxClient("token");
    var filePath = @"c:\myFile.txt"; //for example

    if(File.Exists(filePath))
    {
      var fileStream = new FileStream(filePath, FileMode.Open, FileAccess.Read);
    
      byte[] content;
      using(var reader = new BinaryReader(fileStream))
      {
         content = reader.ReadBytes((int)fileStream.Length);
      }

      using(var mem = new MemoryStream(content))
      {
         await dbx.Files.UploadAsync("/myFile.txt", WriteMode.Overwrite.Instance, body: 
               mem);
      }
    }
  }
}


3.) Add Newtonsoft.Json package using NuGet Package Manager and you are done.

There is a better approach to uploading bigger-sized files. But I hope this suites your scenario.