我正在将一些代码从VB转换为C#,但是在这样做时,我会收到一个'方法名称预期'错误,因为 jo in -in -tegrackID = int。parse( JO ("访谈"(;。错误返回为 - " jo"是"变量",但像"方法"一样使用。
这是原始的VB代码:
Private interviewID As Integer
Public Sub ProcessRequest(ByVal context As HttpContext) Implements IHttpHandler.ProcessRequest
Dim sr As New System.IO.StreamReader(context.Request.InputStream)
Dim line As String = sr.ReadToEnd()
Dim jo As JObject = JObject.Parse(line)
interviewID = CInt(jo("interviewID"))
GetIntervieweeTableInfo();
WriteCallback(context, interviewee);
End Sub
这里转换为C#:
private int interviewID;
public void ProcessRequest(HttpContext context)
{
System.IO.StreamReader sr = new System.IO.StreamReader(context.Request.InputStream);
string line = sr.ReadToEnd();
JObject jo = JObject.Parse(line);
interviewID = int.Parse(jo("interviewID"));
GetIntervieweeTableInfo();
WriteCallback(context, interviewee);
}
我缺少什么?
jo("interviewID")
在VB中调用 indexer 在JObject
类中,在C#中使用Square Brackets []
进行CC#进行完成,而不是正常的括号()
。
正确的代码应为:
interviewID = int.Parse(jo["interviewID"]);