using Musify.Domain.ValueObjects; namespace Musify.Api.Models; /// Query-string binding for a genre name (case-insensitive); unknown names are rejected with a 400. public readonly record struct GenreParameter(Genre Value) { public static bool TryParse(string? value, out GenreParameter result) { if (Enum.TryParse(value, ignoreCase: true, out var genre) && Enum.IsDefined(genre)) { result = new GenreParameter(genre); return true; } result = default; return false; } }