Ciao a tutti!
Sto usando Razor (NON MVC!) e ho un helper con questo codice, che serve per estrarre dei dati in forma gerarchica.
Funziona bene ma il problema è che vorrei, invece di mostrare a video i risultati con il <DIV>, concatenarli tutti in un unica stringa all'interno di una variabile, così:codice:@{ var db =Database.Open(App.connDatabase); var treeViewx = db.Query("SELECT * FROM Cat ORDER BY CatName ASC"); @BuildTreeView(treeViewx,0).ToString() } @helperBuildTreeView(IEnumerable<dynamic> data,int catParent,int? idcatparent =0,int level =0,string acc ="") { var nodes = data.Where(n => n.IdCatParent== idcatparent).OrderBy(n => n.Id); var sep =""; stringCompl=""; // @Html.Raw("<tbody>"); if(nodes.Any()) { if(nodes.First().IdCatParent!=null) { if(level >0) { sep =" >> "; } } if(level ==0) { //@Html.Raw("<p>"); } foreach(var node in nodes) { var fullText = acc + sep + node.CatName; // @Html.Raw(string.Format("\r\n<a href=\"{0}\">modifica</a>", node.Id, fullText, selectRecord)); Compl="["+string.Format("{1},{0}", node.Id, fullText)+"],"; //Compl = Compl + Compl; @BuildTreeView(data, catParent, node.Id, level +1, fullText); ///// <div>@Compl</div> } } } }
codice:varTree="["Cat1","1"], [["Cat1","1"], ["Cat2","2"]], ...
Sapete darmi una mano?

Rispondi quotando
