round ejemplos decimals c# ambiguity

ejemplos - C#La llamada es ambigua entre los siguientes métodos o propiedades: ''System.Math.Round(double, int)'' y ''System.Math.Round(decimal, int)



math.round c# (3)

Mi código no se compilará debido al error siguiente:

La llamada es ambigua entre los siguientes métodos o propiedades: ''System.Math.Round (double, int)'' y ''System.Math.Round (decimal, int)

Mi codigo es

Math.Round(new FileInfo(strFilePath).Length / 1024, 1)

¿Cómo puedo arreglar esto?

Gracias


El problema es que usted hace una división entera (los resultados también en un int ) y un int puede convertirse implícitamente a double y decimal . Por lo tanto, debes asegurarte de que la expresión resulte en uno de esos; double es probablemente lo que quieres.

Math.Round(new FileInfo(strFilePath).Length / 1024.0, 1)


Math.Round((double) (new FileInfo(strFilePath).Length / 1024), 1)


Math.Round(new FileInfo(strFilePath).Length / 1024d, 1)