using System.Collections.Generic;
public class AsystemController : Controller
public ActionResult Index()
public ActionResult getJsonMlist()
List<DTO.GenMenuList> list = new List<DTO.GenMenuList>();
DTO.GenMenuList item1 = new DTO.GenMenuList(1, "Parent Folder 1", 0, 0);
DTO.GenMenuList item5 = new DTO.GenMenuList(5, "(1) Nested Folder", 1, 1);
DTO.GenMenuList key12 = new DTO.GenMenuList(12, "(1) Nested Nested File", 2, 5);
DTO.GenMenuList item2 = new DTO.GenMenuList(2, "Parent Folder 2", 0, 0);
return Json(GetGenMenu(list),JsonRequestBehavior.AllowGet);
public void Traverse(List<DTO.menuTree> mlist, DTO.GenMenuList dto, DTO.menuTree m1)
if (i.key == dto.under.ToString())
i.folder = i.children.Count != 0;
Traverse(i.children, dto, m1);
public List<DTO.menuTree> GetGenMenu(List<DTO.GenMenuList> list)
List<DTO.menuTree> mlist = new List<DTO.menuTree>();
string genser = Newtonsoft.Json.JsonConvert.SerializeObject(list);
Console.WriteLine("First List (nested correctly):");
Console.WriteLine(genser);
foreach (DTO.GenMenuList dto in list)
DTO.menuTree m1 = new DTO.menuTree();
m1.key = dto.keyno.ToString();
m1.children = new List<DTO.menuTree>();
Traverse(mlist, dto, m1);
string chkmlist = Newtonsoft.Json.JsonConvert.SerializeObject(mlist);
Console.WriteLine("\nSecond List (catching the parents):");
Console.WriteLine(chkmlist);
public JsonResult GetAnswer(string question)
int index = _rnd.Next(_db.Count);
private static Random _rnd = new Random();
private static List<string> _db = new List<string> { "Yes", "No", "Definitely, yes", "I don't know", "Looks like, yes"} ;