Привет! Я хочу загрузить файл на диск Google, но каждый раз, когда я получаю эту ошибку, ссылка на объект не установлена на экземпляр объекта. Я думаю, что эта серия видео ссылка . Я приняла запрос на загрузку с Google Drive. Я пробовал загружать zip, jpg, txt, но та же ошибка. И я пытаюсь Google.Apis.Drive.v2, но та же ошибка. Что я могу сделать? Пожалуйста, помогите извините мой Engli sh: (
private static string ApplicationName = "MysqlYedekleme";
private static string FolderId = "1g_PTi5lQBCbZBax_3foZPdiECOC7cSaU";
private static string filename = "test.rar";
private static string filePath = @"E:\yedekdeneme\test.rar";
private static string contentType = "application/zip";
//drve
private void Form1_Load(object sender, EventArgs e)
{
UserCredential credential = GetUserCredential();
DriveService service = GetDriveService(credential);
uploadFileDrive(service, filename, filePath, contentType);
}
private static UserCredential GetUserCredential()
{
using (var stream = new FileStream("client_secret.json", FileMode.Open, FileAccess.Read))
{
string creadPath = Environment.GetFolderPath(Environment.SpecialFolder.Personal);
creadPath = Path.Combine(creadPath, "driveApiCredentials", "drive-credentials.json");
return GoogleWebAuthorizationBroker.AuthorizeAsync(
GoogleClientSecrets.Load(stream).Secrets,
Scopes,
"User",
CancellationToken.None,
new FileDataStore(creadPath, true)).Result;
}
}
private static DriveService GetDriveService(UserCredential credential)
{
return new DriveService
(new BaseClientService.Initializer
{
HttpClientInitializer = credential,
ApplicationName = ApplicationName,
});
}
private static string uploadFileDrive(DriveService service, string filename, string filePath, string contentType)
{
try
{
var fileMetadata = new Google.Apis.Drive.v3.Data.File();
fileMetadata.Name = Path.GetFileName(filePath);
fileMetadata.MimeType = "application/zip";
fileMetadata.Parents = new List<string> { FolderId };
FilesResource.CreateMediaUpload request;
using (var stream = new System.IO.FileStream(filePath, System.IO.FileMode.Open))
{
request = service.Files.Create(fileMetadata, stream, contentType);
request.Fields = "id";
request.Upload();
}
var file = request.ResponseBody;
return file.Id;
}
catch (Exception exc)
{
System.Diagnostics.Debug.WriteLine("geldi:"+exc.Message);
}
}