AWS services or capabilities described in AWS Documentation may vary by region/location. Click Getting Started with Amazon AWS to see specific differences applicable to the China (Beijing) Region.
This is the response object from the GetLifecycleConfiguration operation.
Namespace: Amazon.S3.Model
Assembly: AWSSDK.S3.dll
Version: 3.x.y.z
public class GetLifecycleConfigurationResponse : AmazonWebServiceResponse
The GetLifecycleConfigurationResponse type exposes the following members
Name | Description | |
---|---|---|
![]() |
GetLifecycleConfigurationResponse() |
Name | Type | Description | |
---|---|---|---|
![]() |
Configuration | Amazon.S3.Model.LifecycleConfiguration |
Gets and sets the property Configuration. Container for lifecycle rules. You can add as many as 1,000 rules. |
![]() |
ContentLength | System.Int64 | Inherited from Amazon.Runtime.AmazonWebServiceResponse. |
![]() |
HttpStatusCode | System.Net.HttpStatusCode | Inherited from Amazon.Runtime.AmazonWebServiceResponse. |
![]() |
ResponseMetadata | Amazon.Runtime.ResponseMetadata | Inherited from Amazon.Runtime.AmazonWebServiceResponse. |
![]() |
TransitionDefaultMinimumObjectSize | Amazon.S3.TransitionDefaultMinimumObjectSize |
Gets and sets the property TransitionDefaultMinimumObjectSize. Indicates which default minimum object size behavior is applied to the lifecycle configuration. This parameter applies to general purpose buckets only. It isn't supported for directory bucket lifecycle configurations.
To customize the minimum object size for any transition you can add a filter that
specifies a custom |
This example shows how to Get, Put and Delete bucket Lifecycle Configurations.
A Lifecycle Configuration allows an owner to configure when specific objects
should be deleted. Objects to be deleted are specified with a prefix.
The configuration being used has rules that delete objects with a specific
prefix and objects in a specific subdirectory.
// Create a client AmazonS3Client client = new AmazonS3Client(); // Put sample lifecycle configuration (overwrite an existing configuration) LifecycleConfiguration newConfiguration = new LifecycleConfiguration { Rules = new List<LifecycleRule> { // Rule to delete keys with prefix "Test-" after 5 days new LifecycleRule { Filter = new LifecycleFilter { LifecycleFilterPredicate = new LifecyclePrefixPredicate { Prefix = "Test-" } }, Expiration = new LifecycleRuleExpiration { Days = 5 } }, // Rule to delete keys in subdirectory "Logs" after 2 days new LifecycleRule { Filter = new LifecycleFilter { LifecycleFilterPredicate = new LifecyclePrefixPredicate { Prefix = "Logs/", } }, Expiration = new LifecycleRuleExpiration { Days = 2 }, Id = "log-file-removal" } } }; PutLifecycleConfigurationRequest putRequest = new PutLifecycleConfigurationRequest { BucketName = "amzn-s3-demo-bucket", Configuration = newConfiguration }; await client.PutLifecycleConfigurationAsync(putRequest); // Retrieve current configuration GetLifecycleConfigurationRequest getRequest = new GetLifecycleConfigurationRequest { BucketName = "amzn-s3-demo-bucket" }; LifecycleConfiguration configuration = (await client.GetLifecycleConfigurationAsync(getRequest)).Configuration; Console.WriteLine("Configuration contains {0} rules", configuration.Rules?.Count); if(configuration.Rules != null) { foreach (LifecycleRule rule in configuration.Rules) { Console.WriteLine("Rule"); if (rule.Filter.LifecycleFilterPredicate is LifecyclePrefixPredicate prefixFilter) Console.WriteLine(" Prefix = " + prefixFilter.Prefix); Console.WriteLine(" Expiration (days) = " + rule.Expiration.Days); Console.WriteLine(" Id = " + rule.Id); Console.WriteLine(" Status = " + rule.Status); } } // Put a new configuration and overwrite the existing configuration configuration.Rules.RemoveAt(0); // remove first rule await client.PutLifecycleConfigurationAsync(putRequest); // Delete current configuration DeleteLifecycleConfigurationRequest deleteRequest = new DeleteLifecycleConfigurationRequest { BucketName = "amzn-s3-demo-bucket" }; await client.DeleteLifecycleConfigurationAsync(deleteRequest); // Retrieve current configuration and verify that it is null configuration = (await client.GetLifecycleConfigurationAsync(getRequest)).Configuration; Debug.Assert(configuration == null);
.NET:
Supported in: 8.0 and newer, Core 3.1
.NET Standard:
Supported in: 2.0
.NET Framework:
Supported in: 4.7.2 and newer