namespace IceImportBLL.FieldResolvers; // ValueType = 8 (Fixed value, applied only during Update) — confirmed against the real // MICEMAPDETAILS.VALUETYPE check-constraint comment and GB4's IceImportNewBLL.cs // (case 8: ///Fixed Value During Update). Same coercion/reflection logic as ValueType 1 (Fixed), // gated on FieldResolutionContext.IsUpdateMode. On an Insert (IsUpdateMode = false) the field // resolves to null rather than falling back to some other ValueType's behavior, since nothing in // the plan specifies an insert-time fallback for this ValueType. public class FixedDuringUpdateResolver : IIceFieldValueResolver { public int ValueType => 8; private readonly FixedValueResolver _inner = new(); public Task ResolveAsync(FieldResolutionContext ctx, CancellationToken ct) => ctx.IsUpdateMode ? _inner.ResolveAsync(ctx, ct) : Task.FromResult(FieldResolutionResult.Ok(null)); }