From 90063317e06aaec8df47015ca2b68f7c06887dcd Mon Sep 17 00:00:00 2001 From: Markus Quaritsch <markus.quaritsch@tugraz.at> Date: Wed, 14 Sep 2016 14:36:04 +0200 Subject: [PATCH] store si-unit string on validation and use for error message --- VectoCommon/VectoCommon/Utils/Validation.cs | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/VectoCommon/VectoCommon/Utils/Validation.cs b/VectoCommon/VectoCommon/Utils/Validation.cs index 860cb37503..1d58d04429 100644 --- a/VectoCommon/VectoCommon/Utils/Validation.cs +++ b/VectoCommon/VectoCommon/Utils/Validation.cs @@ -198,6 +198,7 @@ namespace TUGraz.VectoCommon.Utils public class SIRangeAttribute : RangeAttribute { private ExecutionMode? _mode; + private string _unit = "-"; /// <summary> /// Checks the Min-Max Range of SI Objects. @@ -267,6 +268,10 @@ namespace TUGraz.VectoCommon.Utils { var si = value as SI; + if (si != null) { + _unit = si.GetUnitString(); + } + var modeService = validationContext.GetService(typeof(ExecutionMode)) as ExecutionModeServiceContainer; var mode = modeService == null ? (ExecutionMode?)null : modeService.Mode; if (mode == null) { @@ -277,6 +282,13 @@ namespace TUGraz.VectoCommon.Utils } return ValidationResult.Success; } + + public override string FormatErrorMessage(string name) + { + const string unitString = "{0} [{1}]"; + return string.Format(ErrorMessageString, name, string.Format(unitString, Minimum, _unit), + string.Format(unitString, Maximum, _unit)); + } } /// <summary> -- GitLab