gpt4 book ai didi

c# - 在 visual studio 2012 中使用 newton.jsoft (json.net) 将 c# 翻译成 vb .net 时出现翻译错误

转载 作者:行者123 更新时间:2023-11-30 22:08:51 30 4
gpt4 key购买 nike

这段代码有什么问题:在 visual studio 2012 中使用 newton.jsoft (json.net) 将 c# 转换为 vb .net 时出错:原代码:

 public static List<TradeInfo> GetTrades(BtcePair pair)
{
string queryStr = string.Format("https://btc-e.com/api/2/{0}/trades", BtcePairHelper.ToString(pair));
return JArray.Parse(WebApi.Query(queryStr)).OfType<JObject>().Select(TradeInfo.ReadFromJObject).ToList();
}

翻译后的代码:

Public Shared Function GetTrades(pair As BtcePair) As List(Of TradeInfo)
Dim queryStr As String = String.Format("https://btc-e.com/api/2/{0}/trades", _
BtcePairHelper.ToString(pair))
Return JArray.Parse(WebApi.Query(queryStr)).OfType(Of JObject)().[Select](TradeInfo.ReadFromJObject).ToList()
End Function

错误:

Error 1 Argument not specified for parameter 'o' of 'Public Shared Function ReadFromJObject(o As Newtonsoft.Json.Linq.JObject) As TradeInfo'.

调用函数(vb):

Public Shared Function ReadFromJObject(o As JObject) As TradeInfo
If o Is Nothing Then
Return Nothing
End If

Return New TradeInfo() With
{.Amount = o.Value(Of Decimal)("amount"), _
.Price = o.Value(Of Decimal)("price"), _
.[Date] = UnixTime.ConvertToDateTime(o.Value(Of Long)("date")), _
.Item = BtceCurrencyHelper.FromString(o.Value(Of String)("item")), _
.PriceCurrency = BtceCurrencyHelper.FromString(o.Value(Of String)
("price_currency")), _
.Tid = o.Value(Of Long)("tid"), _
.Type = TradeInfoTypeHelper.FromString(o.Value(Of String)("trade_type")) _
}
End Function

最佳答案

我认为您只需要一个“AddressOf”,因为您实际上并没有调用“ReadFromJObject”:

Public Shared Function GetTrades(ByVal pairlist() As BtcePair, Optional ByVal limit As Integer = 150) As Dictionary(Of BtcePair, List(Of TradeInfoV3))
Dim tradeInfoListReader As Func(Of JContainer, List(Of TradeInfoV3)) = (Function(x) x.OfType(Of JObject)().Select(AddressOf TradeInfoV3.ReadFromJObject).ToList())
Return MakeRequest(Of List(Of TradeInfoV3))("trades", pairlist, tradeInfoListReader, New Dictionary(Of String, String)() From {{ "limit", limit.ToString() }}, True)
End Function

关于c# - 在 visual studio 2012 中使用 newton.jsoft (json.net) 将 c# 翻译成 vb .net 时出现翻译错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22002877/

30 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com