转换Json数组以在Winforms C#中使用它

时间:2014-02-06 00:24:52

标签: json c#-4.0 nusoap

我在转换Json数组以在Winforms中使用它时遇到问题。 我发送带有PHP Web服务的Json数组,它的工作非常好。 我正在使用Nusoap并使用Structy从MySQL DB生成myclasses。

这是我的Nusoap代码:

<pre> 
<?php

    require_once "lib/nusoap.php";
    include_once '../Classes/_config.inc.php';
    include_once '../Classes/Database.class.php';
    include_once '../Classes/client.class.php';

//on initialise un nouvel objet serveur 

    $server = new soap_server(); 



     // on configure en donnant un nom et un Namespace 

    $server->configureWSDL("WebService Client","client");

    $server->register('getClient',array(),  array('return'=>'xsd:string'),'client');



    function getClient(){

    $client = client::readArray(array());

    $arrayForJs = []; 


    foreach($client as $item)
    { 
    array_push($arrayForJs,['Nom'=>$item->getNom(),'Prenom'=>$item->getPrenom()]);
    } 

        return json_encode($arrayForJs);





}

 $server->service($HTTP_RAW_POST_DATA);

 ?>

和我的.net代码:

 private void button1_Click(object sender, EventArgs e)
        {
            SimpleService.WebService.WebServiceClient soap = new SimpleService.WebService.WebServiceClient();
            string JsonEncoded;
            JsonEncoded = soap.getClient();
            MessageBox.Show(JsonEncoded);
     }

数组返回格式良好:

  

[{ “喃”: “艾哈迈德”, “Prenom”: “Maiza”},{ “喃”: “Moez”, “Prenom”: “Jbiss”},{ “喃”: “补肝”,” Prenom “:” 苏西 “},{” 喃 “:” Leoin”, “Prenom”: “帕特里克”}]

我想解码它并使用它在Winforms中显示它。

我使用了Newtonsoft和System.Web.Script.Serialization,但我无法让它工作。

那么请问,我该怎么做,当我想将C#中的数据解析到我的数据库时,我可以使用什么?

2 个答案:

答案 0 :(得分:0)

您可以使用名为Jayrock的库,它可以在@ http://jayrock.berlios.de/

中使用
List<User> UserList = JsonConvert.DeserializeObject<User>(jsonString);

答案 1 :(得分:0)

谢谢这对我有用,但我没有打电话给Jayrock

   List<Client> listeclient = JsonConvert.DeserializeObject<List<Client>>(JsonEncoded);

        foreach (Client nom in listeclient)
        {
            MessageBox.Show(nom.Nom);
            MessageBox.Show(nom.Prenom);
        }