У меня есть следующие классы, объявленные управлять мой ответ обратно с помощью json2csharpФорматирование ответа соответственно с restsharp
public class Address
{
public string addressLine1 { get; set; }
public string addressLine2 { get; set; }
public string addressLine3 { get; set; }
public string locality { get; set; }
public string province { get; set; }
public string postalCode { get; set; }
public string country { get; set; }
}
public class Component
{
public string streetNumber1 { get; set; }
public string street1 { get; set; }
public string locality1 { get; set; }
public string postalCode1 { get; set; }
public string country1 { get; set; }
public string countryISO1 { get; set; }
}
public class RootObjectFormat
{
public List<Address> address { get; set; }
public List<Component> components { get; set; }
}
Вот мой призыв
var client = new RestClient(cmboxOutput.Text); //this has a full url in it for a get response
var formatRequest = new RestRequest();
formatRequest.AddHeader("token", "XYZ");
IRestResponse<RootObjectFormat> formatResponse = client.Execute<RootObjectFormat>(formatRequest);
Теперь я получаю ответ обратно что здорово. Но он вложен. К сожалению, следующее для каждого цикла получает данные с неправильным форматом.
foreach (var result in formatResponse.Data.address)
{
rchtxtbxOutputLayout.Text = rchtxtbxOutputLayout.Text + result.addressLine1 + '\n';
rchtxtbxOutputLayout.Text = rchtxtbxOutputLayout.Text + result.addressLine2 + '\n';
rchtxtbxOutputLayout.Text = rchtxtbxOutputLayout.Text + result.addressLine3 + '\n';
rchtxtbxOutputLayout.Text = rchtxtbxOutputLayout.Text + result.locality + '\n';
rchtxtbxOutputLayout.Text = rchtxtbxOutputLayout.Text + result.postalCode + '\n';
rchtxtbxOutputLayout.Text = rchtxtbxOutputLayout.Text + result.country + '\n';
}
Поскольку вложен, чтобы захватить addressLine2 я должен ждать во второй раз цикл осуществляется в конце мой вывод выглядит очень непрофессионально. Есть лучший способ сделать это? http://i.imgur.com/saAhf9L.png < первый запуск на петле http://i.stack.imgur.com/24cco.png < пятый запуск
Найден лучший способ вывода формата от ответа, но это все еще не то, что идеально. Любой способ улучшить это?
foreach (var result in formatResponse.Data.address)
{
rchtxtbxOutputLayout.Text = rchtxtbxOutputLayout.Text +"\n"+ string.Join("",result.addressLine1 + result.addressLine2
+ result.addressLine3 + result.postalCode + result.province + result.country);
}