如何将此VB.net函数转换为C#?

问题描述 投票:0回答:1

我使用此URL:http://converter.telerik.com/转换代码。需要转换为C#的代码:

Dim rand As New Random()
Function MyRandomNumber() As String
    Dim min As Decimal = 0.01D
    Dim max As Decimal = 9.91D
    Dim decimalPlaces = 3
    Dim multiplier = CDec(Math.Pow(10, decimalPlaces))

    Dim range = (max - min) * multiplier
    Dim val = rand.Next(0, CInt(range + 1))
    Return (val / multiplier + min).ToString()

End Function

但是当我上次这样做并将其复制到我的C#解决方案中时,它会引发错误。

运算符'+'不能应用于'double'类型的操作数,并且'十进制'

转换后的C#代码无效:

private Random rand = new Random();
public string MyRandomNumber()
{
    decimal min = 0.01M;
    decimal max = 9.91M;
    var decimalPlaces = 3;
    var multiplier = System.Convert.ToDecimal(Math.Pow(10, decimalPlaces));

    var range = (max - min) * multiplier;
    var val = rand.Next(0, System.Convert.ToInt32(range + 1));
    return (val / (double)multiplier + min).ToString();
}
c# vb.net converters
1个回答
-1
投票

用以下代码替换值var val = rand.Next(0, System.Convert.ToInt32(range) + 1);

© www.soinside.com 2019 - 2024. All rights reserved.