将下面的c#示例转换为VB.NET

本文关键字:转换 VB NET | 更新日期: 2023-09-27 18:02:34

这是c#中的示例

using System.Web.Script.Serialization;
var jss = new JavaScriptSerializer();
var dict = jss.Deserialize<Dictionary<string,string>>(jsonText);
Console.WriteLine(dict["some_number"]); //outputs 108.541

因为当我尝试使用在线转换器将其转换为vb.net时,我一直得到错误。有人知道如何在vb.net中重写这个吗?

我从http://www.developerfusion.com/tools/convert/csharp-to-vb/得到的错误是:

-- line 3 col 1: EOF expected

将下面的c#示例转换为VB.NET

你必须输入有效的c#。

我把你的输入代码改成如下:

using System.Web.Script.Serialization;
public class Test {
   public void DoSomething() {
      var jss = new JavaScriptSerializer();
      var dict = jss.Deserialize<Dictionary<string,string>>(jsonText);
      Console.WriteLine(dict["some_number"]); //outputs 108.541
   }
}

然后通过显影器融合得到:

进口System.Web.Script.Serialization

Public Class Test
    Public Sub DoSomething()
        Dim jss = New JavaScriptSerializer()
        Dim dict = jss.Deserialize(Of Dictionary(Of String, String))(jsonText)
        Console.WriteLine(dict("some_number"))
        'outputs 108.541
    End Sub
End Class
Imports System.Web.Script.Serialization
Dim jss = New JavaScriptSerializer()
Dim dict = jss.Deserialize(Of Dictionary(Of String, String))(jsonText)
Console.WriteLine(dict("some_number"))
'outputs 108.541

您需要在文件中添加某种形式的类,因为当前您的变量是在类之外创建的。将using分开,因为这应该在文件的顶部,我认为下面应该工作:

Imports System.Web.Script.Serialization

剩下的是:

Dim jss = New JavaScriptSerializer()
Dim dict = jss.Deserialize(Of Dictionary(Of String,String))(jsonText)
Console.WriteLine(dict("some_number")) 'outputs 108.541

您也没有声明jsonText,所以我不希望这段代码按原样运行。我没有尝试编译这个,但它看起来不错。