33 messaggi dal 17 febbraio 2015
Ciao a tutti!

Sto usando Razor (NON MVC!) e ho un helper con questo codice, che serve per estrarre dei dati in forma gerarchica.


@{
    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>

        }

    }

}

}



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ì:


var Tree="["Cat1","1"], [["Cat1","1"], ["Cat2","2"]], ...



Potete aiutarmi?

Torna al forum | Feed RSS

ASPItalia.com non è responsabile per il contenuto dei messaggi presenti su questo servizio, non avendo nessun controllo sui messaggi postati nei propri forum, che rappresentano l'espressione del pensiero degli autori.