Код: Выделить всё
string jStr = "[{\"name\":\"0\",\"weight\":[1,2,3],\"count\":9}]";
JavaScriptSerializer json = new JavaScriptSerializer();
List<Object> objects = json.Deserialize<List<Object>>(jStr);
System.Console.WriteLine("objects.count = " + objects.Count);
foreach (var o in objects)
{
Dictionary<string, object> temp = (Dictionary<string, Object>)o;
string name = (string)temp["name"];
int count = (int)temp["count"];
//Object[] weightData = (Object[])temp["weight"]; //работает в win, не работает в lin
System.Console.WriteLine("name = " + name);
System.Console.WriteLine("count = " + count);
}
Если раскомметировать строку, то программа падает с System.InvalidCastException, причем только в linux. В win все работает.
Почему такое может быть?