Как изменить значение синтаксического анализа StringBuilder через JArray - PullRequest
0 голосов
/ 10 февраля 2020

Я изо всех сил пытался завершить sh эту задачу, пожалуйста, если кто-нибудь может дать мне подсказку, я был бы так благодарен.

Моя основная задача - получить данные из базы данных, используя (FOR JSON AUTO), который работает:)

select filed1, field2, field3 from table FOR JSON AUTO;

А затем после подключения к базе данных я использую StringBuilder () построить Json массив объектов, который работает:)

var jsonResult = new StringBuilder();
if(!r.HasRows)
{
   jsonResult.Append("[]");
}
else
{
    while(r.Read())
    {
       jsonResult.Append(r.GetValue(0).ToString());
    }
    // JArray array = JArray...
}

После этого я пытаюсь изменить значение filed1 для каждого объекта внутри Json Array

JArray array = JArray.Parse(jsonResult.ToString());

foreach (JObject obj in array.Children<JObject>())
{
   foreach (JProperty singleProp in obj.Properties())
   {
      string name = singleProp.Name;
      string value = singleProp.Value.ToString();
      if(name.ToString() == "field1")
      { 
         Int64 newID = 1234;
         value = newID.ToString();                            
      }                      
   }
}

Это работает, но мой БОЛЬШОЙ ВОПРОС - как я могу изменить его в jsonResult?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...