We seem to have sorted out the original issue by using the following code to handle parsing the value to Decimal:
if (valueProviderResult == null)
{
return base.BindModel(controllerContext, bindingContext);
}
else
{
decimal tmpValue;
if (decimal.TryParse(value, System.Globalization.NumberStyles.AllowDecimalPoint, CultureInfo.InvariantCulture, out tmpValue))
{
return tmpValue;
}
else
{
return 0m;
}
}
The issue we now have is that the project doesn't seem to be picking up the DateTime settings. When running DateTime.Now in the project, it detects a date with dashes instead of slashes, which is the system's date format. I've taken a look in the IIS Globalization settings, and they are all set to Invariant Culture