我在转换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#中的数据解析到我的数据库时,我可以使用什么?
答案 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);
}