2014-07-15 5 views
0

Мне нужно создать древовидное представление в инфраструктуре asp.net mvc5 для рекурсивных выходов. Это моя модель классаTree View в ASP.NET MVC5

public class ProcSearchModel 
{ 
    /// <summary> 
    /// 
    /// </summary> 

    public string TableName { get; set; } 

    /// <summary> 
    /// 
    /// </summary> 
    public string DirectoryPath { get; set; } 

    /// <summary> 
    /// 
    /// </summary> 
    public List<string> ProceduresName { get; set; } 

// public List<ProcSearchModel> = 
} 

, которая хранит список результата в списке ProceduresName. Теперь для каждого имени процедуры в списке есть еще один список имен в нем. Что мне нужно, чтобы заполнить в виде дерева ..

В настоящее время это моя функция контроллера:

public ActionResult SearchProcedure(ProcSearchModel procSearchModel) 
    { 
     List<string> lstString = new List<string>(); 
     //if (procSearchModel != null) 
     //{ 
      try 
      { 
       var txtFiles = Directory.EnumerateFiles(procSearchModel.DirectoryPath, "*.sql", SearchOption.AllDirectories); 

       // pattern to capture the Stored procedue name 
       // string cpattern = @"(CREATE PROCEDURE|ALTER PROCEDURE)\s*(?<proc_name>(\w|_|\[|\]|\.)*)(.|\n)*" + procSearchModel.TableName; 
       string cPattern = @"(CREATE PROCEDURE|ALTER PROCEDURE)\s*(?<proc_name>(\w|_|\[|\]|\.)*)"; 
       string tPattern = procSearchModel.TableName; 


       foreach (string currentFile in txtFiles) 
       { 

        string content = System.IO.File.ReadAllText(currentFile); 

        if(Regex.IsMatch(content,tPattern,RegexOptions.IgnoreCase) && Regex.IsMatch(content,cPattern,RegexOptions.IgnoreCase)) 
        { 
         Match match = Regex.Match(content, cPattern, RegexOptions.IgnoreCase); 
         lstString.Add(match.Groups["proc_name"].Value); 


        } 
       } 

       procSearchModel.ProceduresName = lstString; 
      } 

      catch (Exception e) 
      { 
       Console.WriteLine(e.Message); 
      } 
     //} 

     return View(procSearchModel); 
    } 

Теперь плз помочь мне, как заполнить древовидное на usnig вложенный список с jstree плагин

ответ

0

Создать рекурсивную структуру узлов узлов (или объектов) по мере необходимости в иерархии и связывать их как с деревом. Затем передать этот объект в дереве

 class dummyObject{ 
     int num; 
     String data; 
     List<dummyObject> d = new List<dummyObject>();  
    } 

Используйте этот тип объекта класса, чтобы создать иерархическую структуру, а затем передать их в jstree (http://www.jstree.com/) плагин вызов ..... Rest будет сделано плагин.

+0

Вы должны описать с подробностями, как вы исправили проблему. В противном случае этот ответ не очень полезен. – pmbanka

+0

спасибо за предложение @pmbanka –