由于以下错误,我的代码无法编译:
以下方法或属性之间的调用不明确:'System.Math.Round(double,int)'和'System.Math.Round(decimal,int)
我的代码是
Math.Round(new FileInfo(strFilePath).Length / 1024, 1)
我该如何解决这个问题?
由于
答案 0 :(得分:44)
Math.Round(new FileInfo(strFilePath).Length / 1024d, 1)
答案 1 :(得分:26)
问题在于您进行整数除法(结果也在int
中),而int
可以隐式转换为double
和decimal
。因此,您需要确保表达式导致其中一个; double
可能就是你想要的。
Math.Round(new FileInfo(strFilePath).Length / 1024.0, 1)
答案 2 :(得分:5)
Math.Round((double) (new FileInfo(strFilePath).Length / 1024), 1)