asp.net mvc validation
Hej eksperter.. Nu har jeg søgt nettet tykt og tyndt igennem for en løsning på clientside validering af danske decimaler..har ikke kunne få det til at funge.
har ændret modelbinderen til at convertere til locale decimaler, med det resultat at den bare sletter "." (decimalerne)
modelbinderen ser således ud:
public override object BindModel(ControllerContext controllerContext, ModelBindingContext bindingContext)
{
if (bindingContext.ModelType == typeof(decimal) || bindingContext.ModelType == typeof(Nullable<decimal>))
{
ValueProviderResult valueProviderResult = bindingContext.ValueProvider.GetValue(bindingContext.ModelName);
if (valueProviderResult != null)
{
decimal result;
var array = valueProviderResult.RawValue as Array;
object value;
if (array != null && array.Length > 0)
{
value = array.GetValue(0);
if (decimal.TryParse(value.ToString(), out result))
{
string val = result.ToString(CultureInfo.InvariantCulture.NumberFormat);
array.SetValue(val, 0);
}
}
}
}
return base.BindModel(controllerContext, bindingContext);
}
Fjernes modelbinderen. fås følgende valideringsfejl:
The value '81.00' is not valid for Weight.
både på dansk og på en-US culture.
Det er ret frustrerende, så hvis en af jer har et svar, ville jeg sætte stor pris på det:)
På forhånd tak