namespace MijnBesluit.Application.Models; /// Uitkomst van een bewerking, met een foutmelding die direct aan de gebruiker getoond mag worden. public readonly struct Result { public bool Succeeded { get; } public string? Error { get; } private Result(bool ok, string? error) { Succeeded = ok; Error = error; } public static Result Ok() => new(true, null); public static Result Fail(string error) => new(false, error); } /// Uitkomst met een waarde erbij. public readonly struct Result { public bool Succeeded { get; } public string? Error { get; } public T? Value { get; } private Result(bool ok, T? value, string? error) { Succeeded = ok; Value = value; Error = error; } public static Result Ok(T value) => new(true, value, null); public static Result Fail(string error) => new(false, default, error); }