我有一个python服务器,它将一个字符串列表作为json对象发送到C#客户端。在客户端,我有这个代码来反序列化对象:
try
{
var serializer = new System.Web.Script.Serialization.JavaScriptSerializer();
var jsonObject = serializer.DeserializeObject(sr.ReadToEnd());
textBox4.Text = jsonObject.ToString();
}
catch (Exception e){
textBox2.Text = e.ToString();
}
我得到的结果是:" System.Object []"
理想情况下,我想将列表的内容放入数组中。
有人能指出我正确的方向吗?
答案 0 :(得分:1)
你正在获得一系列通用对象,但是我觉得你不想要这个并且你更喜欢获得更有用的结果,所以:
使用对象的属性创建一个类(例如:id,name等)。您可以使用this page自动生成课程。
然后使用以下代码将输入反序列化为您在第一步中创建的类的对象:
MyNewClass myNewClassList = serializer.Deserialize<MyNewClass>(sr.ReadToEnd());
我希望这可以帮到你
修改强>
这是使用您在评论中告诉我的新信息创建的完整示例:
var json = "[\"file0\",\"file1\",\"file2\",\"file3\",\"file4\",\"file5\"]";
var serializer = new JavaScriptSerializer();
var files = serializer.Deserialize<List<String>>(json);