Я хочу получить данные из базы данных SQL Server с помощью C#. Я пытаюсь получить строку json из построителя строк. Я стараюсь, как это:Преобразование строкового построителя в строку json
public string GetData()
{
using (SqlConnection con = new SqlConnection(this.Connection))
{
con.Open();
SqlCommand command = new SqlCommand("Select TITLE, DURATION, STATUS, TYPE from PROJECTS ", con);
StringBuilder sb = new StringBuilder();
sb.Append("{");
using (SqlDataReader reader = command.ExecuteReader())
{
while (reader.Read())
{
var k = reader.GetString(3);
if (k == "M")
{
sb.Append("main");
sb.Append("{");
sb.Append("sub:[]");
sb.Append("Tittle:");
sb.AppendFormat("{0}", reader["TITTLE"]);
}
if (k == "S")
{
sb.Append("sub");
sb.Append("{");
sb.Append("task:[]");
sb.Append("Tittle:");
sb.AppendFormat("{0}", reader["TITTLE"]);
}
if (k == "T")
{
sb.Append("task");
sb.Append("{");
sb.Append("Tittle:");
sb.AppendFormat("{0}", reader["TITTLE"]);
}
};
}
sb.Append("}");
sb.AppendLine();
return sb.ToString();
}
}
Теперь я получаю строку как
sb = {{main{sub:[]Tittle:newsub{task:[]Tittle:new1task{Tittle:new2}
но моя требуется строка, как:
[{"main":{"sub":[{"task":[{"tittle":"new2""}],"tittle":"new1","}],"tittle":"new","}}]
означает: мой основной заголовок является новым и суб капелька new1 и название задачи new2. Какое изменение мне нужно сделать для моего кода, чтобы получить нужную строку json?
использовать этот синтаксис в sb.Append ("" "main" ""); –
Почему вы строите свой json-результат на строку? –
Я хочу обновить его в моей странице таблицы, используя цикл для этого мне нужно выход в json формате –