using System.ComponentModel.DataAnnotations; namespace TakeoutSaaS.Module.Storage.Options; /// /// 腾讯云 COS 访问配置。 /// public sealed class TencentCosOptions { /// /// SecretId。 /// [Required] public string SecretId { get; set; } = string.Empty; /// /// SecretKey。 /// [Required] public string SecretKey { get; set; } = string.Empty; /// /// 存储地域(如 ap-guangzhou)。 /// [Required] public string Region { get; set; } = string.Empty; /// /// 存储桶名称(含 AppId,如 takeout-bucket-123456)。 /// [Required] public string Bucket { get; set; } = string.Empty; /// /// COS 自定义域名或 API Endpoint(可选),未配置则根据 Region 生成默认域名。 /// public string? Endpoint { get; set; } /// /// CDN 域名(可选),用于生成加速访问地址。 /// [Url] public string? CdnBaseUrl { get; set; } /// /// 是否使用 HTTPS。 /// public bool UseHttps { get; set; } = true; /// /// 是否强制使用 PathStyle 访问,COS 默认可使用虚拟主机形式。 /// public bool ForcePathStyle { get; set; } }