0

I set the projectId, the bucket name and content type of a file, but I need te upload it to a particular folder into the destination bucket. How do I set the complete url?

This is my preliminary code:

I tried to add a directory inside bucketname or inside filename, but it doesn't work. It seems to be a parameter, but I don't know where do I have to set it.

var newObject = new Google.Apis.Storage.v1.Data.Object{
    Bucket = "bucketName",
    Name = "filename", 
    ContentType = "fileContentType"};

var credential = Google.Apis.Auth.OAuth2.GoogleCredential.FromJson(System.IO.File.ReadAllText("credentials.json"));

using (var storageClient = Google.Cloud.Storage.V1.StorageClient.Create(credential)){
     using (var fileStream = new System.IO.FileStream(filePath, System.IO.FileMode.Open)){
         var uploadObjectOptions = new Google.Cloud.Storage.V1.UploadObjectOptions();
         await storageClient.UploadObjectAsync(newObject,fileStream,uploadObjectOptions,progress: null).ConfigureAwait(false);
     }
}

return Ok();
acidboy
  • 95
  • 6

1 Answers1

3

You're adding the "folder" in the wrong place. Note that Google Cloud Storage doesn't have real folders or directories, instead it uses simulated directories which is really just an object with a prefix in its name.

bucket = bucket
object = folderName/objectname
Chris32
  • 4,716
  • 2
  • 18
  • 30