static internal decimal AdjustDecimalScale(decimal value, int newScale)
{
int oldScale = (Decimal.GetBits(value)[3] & 0x00ff0000) >> 0x10;
if (newScale != oldScale)
{
SqlDecimal num = new SqlDecimal(value);
num = SqlDecimal.AdjustScale(num, newScale - oldScale, false /* Don't round, truncate. */);
return num.Value;
}
return value;
}