ASP.NET - Display Tree View Nodes on the basis of access

Asked By Nilesh Patkar on 15-Mar-11 10:41 AM
Hello,

I would like to display treeView nodes access wise.

I have some treeNode of TreeView control and 2 users i.e.userA and userB.

<asp:TreeView ID="TreeView_L1" runat="server">

<Nodes>


        <
asp:TreeNode Text="KRA Management" Expanded="false">

           <asp:TreeNode Text="KRA Directory" PopulateOnDemand="true" Value="1" NavigateUrl="~/Masters/KRA_Directory_Management.aspx" Target="doc"></asp:TreeNode>

             <asp:TreeNode Text="Upload KRA Directory" PopulateOnDemand="true" Value="2" NavigateUrl="~/Masters/Upload_KRA_Directory.aspx" Target="doc"></asp:TreeNode>

        </asp:TreeNode>

       <asp:TreeNode Text="Employee" Expanded="false">

             <asp:TreeNode Text="Employee List" PopulateOnDemand="true" Value="3" NavigateUrl="~/EmployeeForms/frmEmployeeInfo.aspx" Target="doc"></asp:TreeNode>

              <asp:TreeNode Text="HOD List" PopulateOnDemand="true" Value="4"  NavigateUrl="~/EmployeeForms/frmHOD.aspx" Target="doc"></asp:TreeNode>

        </asp:TreeNode>

         <asp:TreeNode Text="Dashboard" NavigateUrl="~/BSC/frmDashBoard.aspx" Expanded="false" Target="doc"></asp:TreeNode>

           <asp:TreeNode Text="Select Period" PopulateOnDemand="true" Value="5" NavigateUrl="~/EmployeeForms/frmPeriod.aspx" Target="doc"></asp:TreeNode>


<
asp:TreeNode Text="Logout" NavigateUrl="~/frmLoginForm.aspx" Expanded="false"></asp:TreeNode>


</
Nodes>

</asp:TreeView>

 

When userA login then Value="1",Value="3",Value="5"  nodes are display.
When userB login then Value="1" , Value="2",Value="3",Value="5"  nodes are display.

Kindy suggest.

 When userA login then When userB login then ,,Kindy suggest.

dipa ahuja replied to Nilesh Patkar on 15-Mar-11 01:06 PM
you may store current user in the session variable like to hide particular node you can remove that node based on user so that that user not able to see that nodes:


string user= Session["user"].ToString();
 
if (user == "<user1>")
{
  TreeView1.Nodes.RemoveAt(0);
 
}
else if (user == "<user2>")
{
  TreeView1.Nodes.RemoveAt(1);
 
}


But this solution is not Yet Secure, so i advice you to use the role management