Hi Richard, I am pretty sure that Json shouldn't be a problem, because when I read the data I use a Json deserializer. There really are three different kind of web services: - SOAP - ODATA v3 - ODATA v4 This is the working code I use to read data using the ODATA V4 web service:
listBox1.Items.Clear();
WorkersReadFromAlWebService = new List();
string \_url = "https://api.businesscentral.dynamics.com/v2.0/SomeFunkyGuid/Sandbox/ODataV4/Company('CRONUS%20NL')/WorkersWebService";//CardPage
HttpWebRequest \_request = (HttpWebRequest)WebRequest.Create(\_url);
\_request.ContentType = "application/json; charset=utf-8";
\_request.Headers\["Authorization"\] = "Basic " + Convert.ToBase64String(Encoding.GetEncoding("ISO-8859-1").GetBytes("UserName:Password"));
\_request.PreAuthenticate = true;
HttpWebResponse \_response = \_request.GetResponse() as HttpWebResponse;
using (Stream \_responseStream = \_response.GetResponseStream())
{
StreamReader \_reader = new StreamReader(\_responseStream, Encoding.UTF8);
string \_content = \_reader.ReadToEnd();
string \_jasonPart = GetJsonPartMultiRecord(\_content);
List \_jWorkers = JsonConvert.DeserializeObject\>(\_jasonPart);
foreach (var \_worker in \_jWorkers)
{
WorkersReadFromAlWebService.Add(\_worker);
listBox1.Items.Add(\_worker.Last\_Name + " / " + \_worker.First\_name + " (No: " + \_worker.No + ")");
}
}
ClearWorker();