<PackageReference Include="Azure.Storage.Blobs" Version="12.25.1" />

BlobAccessPolicy

An Access policy.
using Azure.Core; using Azure.Storage.Common; using System; using System.ComponentModel; using System.Xml; using System.Xml.Linq; namespace Azure.Storage.Blobs.Models { [CodeGenModel("AccessPolicy")] public class BlobAccessPolicy : IXmlSerializable { [CodeGenMember("Start")] public DateTimeOffset? PolicyStartsOn { get; set; } [CodeGenMember("Expiry")] public DateTimeOffset? PolicyExpiresOn { get; set; } [CodeGenMember("Permission")] public string Permissions { get; set; } [EditorBrowsable(EditorBrowsableState.Never)] public DateTimeOffset StartsOn { get { if (PolicyStartsOn.HasValue) return PolicyStartsOn.Value; return default(DateTimeOffset); } set { PolicyStartsOn = value; } } [EditorBrowsable(EditorBrowsableState.Never)] public DateTimeOffset ExpiresOn { get { if (PolicyExpiresOn.HasValue) return PolicyExpiresOn.Value; return default(DateTimeOffset); } set { PolicyExpiresOn = value; } } public BlobAccessPolicy() { } internal BlobAccessPolicy(DateTimeOffset? policyStartsOn, DateTimeOffset? policyExpiresOn, string permissions) { PolicyStartsOn = policyStartsOn; PolicyExpiresOn = policyExpiresOn; Permissions = permissions; } void IXmlSerializable.Write(XmlWriter writer, string nameHint) { writer.WriteStartElement(nameHint ?? "AccessPolicy"); if (Optional.IsDefined(PolicyStartsOn)) { writer.WriteStartElement("Start"); writer.WriteValue(PolicyStartsOn.Value, "O"); writer.WriteEndElement(); } if (Optional.IsDefined(PolicyExpiresOn)) { writer.WriteStartElement("Expiry"); writer.WriteValue(PolicyExpiresOn.Value, "O"); writer.WriteEndElement(); } if (Optional.IsDefined(Permissions)) { writer.WriteStartElement("Permission"); writer.WriteValue(Permissions); writer.WriteEndElement(); } writer.WriteEndElement(); } internal static BlobAccessPolicy DeserializeBlobAccessPolicy(XElement element) { DateTimeOffset? policyStartsOn = null; DateTimeOffset? policyExpiresOn = null; string permissions = null; XElement xElement = element.Element("Start"); if (xElement != null) policyStartsOn = xElement.GetDateTimeOffsetValue("O"); XElement xElement2 = element.Element("Expiry"); if (xElement2 != null) policyExpiresOn = xElement2.GetDateTimeOffsetValue("O"); XElement xElement3 = element.Element("Permission"); if (xElement3 != null) permissions = (string)xElement3; return new BlobAccessPolicy(policyStartsOn, policyExpiresOn, permissions); } } }