我需要在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);
}
现在,plz帮助我如何使用jstree插件使用嵌套列表填充树视图
答案 0 :(得分:0)
在层次结构中根据需要创建节点(或对象)的递归节点结构,并将它们链接到树中。然后在树中传递该对象
class dummyObject{
int num;
String data;
List<dummyObject> d = new List<dummyObject>();
}
使用这种类的对象来创建层次结构,然后将它们传递给jstree(http://www.jstree.com/)插件调用..... Rest将完成插件。