public ActionResult Result(int currentrecord) { FacilityMaster @facility = _context.FacilityMasters.Find(currentrecord); Organisation currentOrganisation = @facility.OOrganisation; List <int> participantsIds = null; if (currentrecord != 0) { List <UserLoginInformation> usersInDb = new List <UserLoginInformation>(); usersInDb.AddRange(@facility.GetAssocaitedFacilityAdmins()); participantsIds = usersInDb.Select(x => x.USERID).ToList(); } List <MyNode> nodes = new List <MyNode>(); MyOrganisation @org = new MyOrganisation(); @org.Name = currentOrganisation.Name; @org.Value = currentOrganisation.OrganisationId; MyNode orgNode = new MyNode { text = org.Name, value = org.Value, icon = "glyphicon glyphicon-home", backColor = "#ffffff", color = "#428bca", //state = new state() { @checked = true, disabled = false, expanded = true, selected = false }, nodetype = MyNodeType.Organisation }; List <MyFacility> facilities = new List <MyFacility> { new MyFacility { Name = @facility.FacilityMasterName, ParentOrganisationId = @facility.OrganisationId, Value = @facility.FacilityMasterId } }; if (facilities.Count > 0) { orgNode.nodes = new List <MyNode>(); foreach (MyFacility @fac in facilities) { MyNode facNode = new MyNode { parent = orgNode.value, text = fac.Name, value = fac.Value, icon = "glyphicon glyphicon-th-list", backColor = "#ffffff", color = "#66512c", //state = new state() { @checked = true, disabled = false, expanded = true, selected = false }, nodetype = MyNodeType.Facility }; List <MyUser> users = @fac.GetAllMatchingUsers(); if (users != null && users.Count > 0) { facNode.nodes = new List <MyNode>(); foreach (MyUser @user in users) { MyNode userNode = new MyNode { parent = facNode.value, text = user.Name, value = user.Value, icon = "glyphicon glyphicon-user", backColor = "#ffffff", color = "#31708f", nodetype = MyNodeType.User }; if (ChatGroupController.CheckIfMatchingMyUserExists(participantsIds, userNode) != null) { userNode.state = new state { @checked = true, disabled = false, expanded = true, selected = false }; } facNode.nodes.Add(userNode); } } orgNode.nodes.Add(facNode); } } nodes.Add(orgNode); return(Json(nodes, JsonRequestBehavior.AllowGet)); }