private void OnSearchNetwork() { var userDto = (UserDto)Session["UserDto"]; if (userDto == null) { Response.Redirect("~/admin/Login.aspx"); return; } MemberNodeDto[] allMemberNodeDto; var rootNumber = userDto.AccountNumber; var idMember = IdMember.Value.Trim(); long parentId = -1; if (!string.IsNullOrEmpty(idMember) && !DcapServiceUtil.IsValidAccountNumber(idMember)) { InvalidCredentialsMessage.Text = "Id thành viên không đúng định dạng"; InvalidCredentialsMessage.Visible = true; ResetMemberTreeView(out allMemberNodeDto); } else { if (string.IsNullOrEmpty(idMember)) { idMember = rootNumber; } if (!DcapServiceUtil.IsContainMemberNode(rootNumber, idMember)) { ResetMemberTreeView(out allMemberNodeDto); InvalidCredentialsMessage.Text = "Id không thuộc quản lý của thành viên."; InvalidCredentialsMessage.Visible = true; } else { allMemberNodeDto = DcapServiceUtil.SearchMemberNodeDto(idMember); if (allMemberNodeDto.Length == 0) { InvalidCredentialsMessage.Text = "Không tồn tại cây thành viên " + idMember; InvalidCredentialsMessage.Visible = true; ResetMemberTreeView(out allMemberNodeDto); } else { InvalidCredentialsMessage.Visible = false; MemberNodeDto parentDirectNodeDto = DcapServiceUtil.GetParentDirectNodeByChildNo(idMember); if (parentDirectNodeDto == null) { ParentDirectInfo.Text = ""; } else { ParentDirectInfo.Text = "Người giới thiệu: " + parentDirectNodeDto.Description; } var parentNodeDto = DcapServiceUtil.GetParentNodeByChildNo(idMember); if (parentNodeDto == null) { ParentInfo.Text = ""; } else { parentId = parentNodeDto.AccountId; ParentInfo.Text = "Tuyến trên: " + parentNodeDto.Description; } } } } var headerNames = new[] { "AccountId", "ParentId", "Description" }; var columnTypes = new[] { typeof(long), typeof(long), typeof(string) }; var ds = CreateMemberNodeDataSet(allMemberNodeDto, headerNames, columnTypes); TreeThanhVien.DataSource = new HierarchicalDataSet(ds, "AccountId", "ParentId", parentId); TreeThanhVien.DataBind(); TreeThanhVien.CollapseAll(); }