4
我一直在努力將.NET代碼轉換爲單聲道。一切工作正常,除了這一部分:單聲道說INT是名單<dynamic>
正如你看到的,value
爲int。單聲道說int是List<dynamic>
(看價值b
)。 if語句然後轉到else if部分,然後在129行拋出異常,因爲int不能被轉換爲List。在.NET中,如果其他部分正確評估爲false,任何人都可以幫忙嗎?
這裏是能夠複製的代碼:)
public static StringBuilder JsonValueToString(dynamic value, StringBuilder sb)
{
if (value is JsonObject)
{
return value.BuildString(sb);
}
else if (value is List<dynamic>)
{
var xs = (List<dynamic>) value;
sb.Append("[");
for (int i = 0; i < xs.Count; ++i)
{
if (i > 0) sb.Append(", ");
JsonValueToString(xs[i], sb);
}
sb.Append("]");
}
else
{
sb.Append(value.ToString());
sb.Append(" ");
}
return sb;
}
//編輯:增加了一個更好的畫面。
// EDIT2:添加了一個代碼片段。
您定位的是哪個版本的Mono? – 2014-10-05 17:44:01
@HighCore單聲道3.2.8。 – 2014-10-05 17:46:28
出於興趣確實值得列表'按預期工作嗎? –
Chris
2014-10-05 17:47:34