J'ai une liste que je veux convertir en structure arborescente. Comment puis-je convertir cela en structure arborescente?liste imbriquée dans C# (liste parent et enfant)
QuestionDetails.cs
using System;
using System.Collections.Generic;
using System.Data;
using System.Data.SqlClient;
using System.Linq;
using System.Web;
using System.Web.Script.Serialization;
public class QuestionDetails
{
public int QID { get; set; }
public int QuestionID { get; set; }
public string Question { get; set; }
public string Answer { get; set; }
public int AnswerType { get; set; }
//public string Question { get; set; }
public IList<QuestionDetails> ChildLayers { get; private set; }
public QuestionDetails()
{
ChildLayers = new List<QuestionDetails>();
}
}
public IList<QuestionDetails> daya()
{
SqlConnection con = new SqlConnection("Data Source=ADMIN-PC;Initial Catalog=Test;Integrated Security=True");
SqlCommand cmd = new SqlCommand(); //
cmd.CommandText = "selectdata";
cmd.Connection = con;
cmd.CommandType = CommandType.StoredProcedure;
con.Open();
SqlDataAdapter da = new SqlDataAdapter(cmd);
DataSet ds = new DataSet();
da.Fill(ds);
// da.Fill(ds.Tables["AnswerMaster"]);
DataTable DT = new DataTable();
DT = ds.Tables["Table"];
DataTable DT1 = new DataTable();
DT1 = ds.Tables["Table1"];
IList<QuestionDetails> data = ConvertDataTable<QuestionDetails>(DT);
IList<QuestionDetails> hierarcy = new List<QuestionDetails>();
//IList<ChildLayers> hierarcy1 = new List<ChildLayers>();
foreach (var layer in data)
{
var sublayers = data.Where(i => i.QID == layer.QuestionID && i.QID != 0);
if (sublayers.Any())
{
hierarcy.Add(layer);
}
foreach (var sublayer in sublayers)
{
layer.ChildLayers.Add(sublayer);
}
}
return hierarcy;
}
Et je veux sortie dans ce format:
{
question id=1
Question ="asasaS"
{
ANSWER="SDASA";
ANSWER="SADSAD";
ANSWER="SADSA";
ANSWER="SADSAD";
}
question id=2
Question ="XCVXVXCVXC"
{
ANSWER="SDASA";
ANSWER="SADSAD";
ANSWER="SADSA";
ANSWER="SADSAD";
}
}
je veux données de la liste liste imbriquée .please aider j'ai créé la classe pour la liste. J'ai une liste que je veux convertir en structure arborescente. Comment puis-je convertir cela en structure arborescente?
Vous avez 'System.Web.Script.Serialization' attendez-vous un JSON en sortie? –
type de liste imbriquée data.means 1 question a plusieurs options, donc l'option devrait être sous la question –
voulez-vous retourner 'return hierarcy;' comme Json? –