我有一个简单的按钮,它运行一个脚本以从40个表中提取数据,在php内部这些以JSON编码。在C中检索多个JSON对象
$stmt = $pdo->prepare("SELECT* FROM form");
$stmt->execute();
$results=$stmt->fetchAll(PDO::FETCH_ASSOC);
$form=$results;
$stmt = $pdo->prepare("SELECT * FROM applicant");
$stmt->execute();
$results=$stmt->fetchAll(PDO::FETCH_ASSOC);
$applicant=$results;
print json_encode(array($form,$applicant));
我不使用select *它只是为了方便阅读。这显示罚款作为一个数组,但是当我拉数组到C#这是作为一个字符串完成,我怎么传递一个数组从PHP到C#?
WebClient wc = new WebClient();
var json = wc.DownloadString("http://localhost/returnData.php");
List<Applicant> app = JsonConvert.DeserializeObject<List<Applicant>>(json);
List <form> form = JsonConvert.DeserializeObject<List<form>>(json);
dataGrid.ItemsSource = form;
dataGrid2.ItemsSource = app;
想法一 这可能是不好的做法,但可能我运行一个脚本为每个表,然后就返回每个JSON对象单独,我知道这会工作,但将这个是表现沉重,将有创建多个脚本。
[{"id":"1","name_id":"0","first":"advert","last":"","address":"","postcode":"2","date_created":"2016-08-09 15:50:12"},{"id":"2","name_id":"0","first":"advert","last":"","address":"","postcode":"2","date_created":"2016-08-09 16:25:04"}]
想法2 我可以创建一个脚本,但用分离器返回所有。例如print $form."^".$app;
然后将它们拆分为C#中的数组?我想理想地将json数组数组传递给c#。
的PHP有没有HTML标记的一类,但你可以点我在正确的方向为REST因为我不想在C#中调用数据,只是出于安全原因。 – Bish25
也是我的JSON返回一个键,我可以使用一个键分隔值吗? – Bish25
你可以发布'var json'的输出吗? – Rahul