/*--------------------------------------------------------------------------------------------- * Copyright (c) Microsoft Corporation. All rights reserved. *--------------------------------------------------------------------------------------------*/ namespace System.ComponentModel.DataAnnotations; [AttributeUsage(AttributeTargets.Property | AttributeTargets.Field | AttributeTargets.Parameter, AllowMultiple = false)] internal sealed class Base64StringAttribute : ValidationAttribute { public override bool IsValid(object? value) { if (value is null) { return true; } if (value is not string text) { return false; } try { Convert.FromBase64String(text); return true; } catch (FormatException) { return false; } } }