/// <summary>
        /// Delete a folder
        /// </summary>
        /// <param name="prefix">prefix</param>
        public void DeleteFolder(string prefix)
        {
            // Get all object with specified prefix
            var listRequest = new ListObjectsRequest();
            listRequest.WithBucketName(_bucketName).WithPrefix(prefix);

            var deleteRequest = new DeleteObjectsRequest();
            deleteRequest.BucketName = _bucketName;

            do
            {
                ListObjectsResponse listResponse = _client.ListObjects(listRequest);

                // Add all object with specified prefix to delete request.
                foreach (S3Object entry in listResponse.S3Objects)
                {
                    deleteRequest.AddKey(entry.Key);
                }

                if (listResponse.IsTruncated)
                {
                    listRequest.Marker = listResponse.NextMarker;
                }
                else
                {
                    listRequest = null;
                }
            }
            while (listRequest != null);

            // Delete all the object with specified prefix.
            if (deleteRequest.Keys.Count > 0)
            {
                var deleteResponse = _client.DeleteObjects(deleteRequest);
                deleteResponse.Dispose();
            }
        }
        private void deleteFile(bool hasFile, string fileType, int id)
        {
            if (hasFile)
            {
                DeleteObjectRequest request = new DeleteObjectRequest();
                request.WithBucketName("intelrecruiter");

                ListObjectsRequest listObjReq = new ListObjectsRequest();
                listObjReq.WithBucketName("intelrecruiter")
                    .WithPrefix(fileType + "/" + id.ToString());
                using (client = Amazon.AWSClientFactory.CreateAmazonS3Client("AKIAJ47VSG7WMA62WLCA", "3tqlHujlftpk6j/z5OtDw2eg9N2FJtz1RwL8bEa3"))
                {
                    var results = client.ListObjects(listObjReq).S3Objects;
                    foreach (var obj in results)
                    {
                        request.Key = obj.Key;
                        client.DeleteObject(request);
                    }
                }
            }
        }
        //***
        public System.Tuple<bool, List<string>> ListObjectsInBucket(AmazonS3Client client, string bucketName)
        {
            try
            {

                ListObjectsRequest request = new ListObjectsRequest();
                request.WithBucketName(bucketName);


                ListObjectsResponse response = client.ListObjects(request);
  
                List<string> retList = new List<string>();
                foreach (S3Object s3Object in response.S3Objects)
                    retList.Add(s3Object.Key);

                return new System.Tuple<bool, List<string>>(false, retList);
            }
            catch (Exception e)
            {
                return new System.Tuple<bool, List<string>>(false, new List<string>() { e.ToString()});
            }

        }
Exemple #4
0
        private static void ListObjects(AmazonS3 s3Client, string bucket)
        {
            var request = new ListObjectsRequest();
              request.WithBucketName(bucket)
             .WithPrefix("key")
             .WithMaxKeys(4);
              do
              {
            ListObjectsResponse response = s3Client.ListObjects(request);

            if (response.IsTruncated)
            {
              request.Marker = response.NextMarker;
            }
            else
            {
              request = null;
            }
              } while (request != null);
        }