C# 尝试创建扩展方法以从字符串转换为十进制
我正试图想出一种将字符串转换为小数点后X位数的全局方法,但我运气不好。我需要这个来返回一个小数点和X个小数点 到目前为止,我已经掌握了以下信息,但我不知道如何让它知道如何轻松地除以:C# 尝试创建扩展方法以从字符串转换为十进制,c#,extension-methods,C#,Extension Methods,我正试图想出一种将字符串转换为小数点后X位数的全局方法,但我运气不好。我需要这个来返回一个小数点和X个小数点 到目前为止,我已经掌握了以下信息,但我不知道如何让它知道如何轻松地除以: public static decimal ToXDecimalPlaces(this object value, int numberofdecimalplaces, decimal defaultValue = 0) { double retval; if (double.TryParse(value.
public static decimal ToXDecimalPlaces(this object value, int numberofdecimalplaces, decimal defaultValue = 0)
{
double retval;
if (double.TryParse(value.ToString(), out retval))
{
return (decimal)(retval / 10);
}
return defaultValue;
}
因此,如果我发送:
value = "12345"
value.ToXDecimalPlaces(2)
我想回去:
123.45
等等
检索的划分需要根据decimalplace的数量而有所不同
有什么建议吗?我不想创建一些扩展方法,或者这就是我应该做的吗
我是否应该创建:
To1DecimalPlaces
To2DecimalPlaces
To3DecimalPlaces
etc
对于我需要的每一个,我都会继续前进。如何使用
差不多
return (decimal)(retval / Math.Pow(10, numberofdecimalplaces));
使用如何
差不多
return (decimal)(retval / Math.Pow(10, numberofdecimalplaces));
您应该使用
此字符串值
,因为您需要字符串值的扩展名。您应该使用此字符串值
,因为您需要字符串值的扩展名。