C# 部门结构树视图传递参数以获取员工(MVC 4)

C# 部门结构树视图传递参数以获取员工(MVC 4),c#,asp.net,asp.net-mvc,C#,Asp.net,Asp.net Mvc,我有以下问题:我正在为我工作的公司制作一个MVC内部网站。工作的一部分是制作一个电话簿——我需要一个树状的部门结构(有深度) 我有一个包含两个div元素的视图-左(包含部门,结构如下),右div应该显示在所选(单击)部门工作的所有员工 @helper GetTree(List<PhonesClasses.Department> department, int parentID){ foreach(var i in department.Where(a=>a.headDepart

我有以下问题:我正在为我工作的公司制作一个MVC内部网站。工作的一部分是制作一个电话簿——我需要一个树状的部门结构(有深度)

我有一个包含两个div元素的视图-左(包含部门,结构如下),右div应该显示在所选(单击)部门工作的所有员工

@helper GetTree(List<PhonesClasses.Department> department, int parentID){
foreach(var i in department.Where(a=>a.headDepartmentID.Equals(parentID)))
{        
    {var childDepartments = department.Where(a => a.headDepartmentID.Equals(i.departmentID)).Count();

    if(childDepartments > 0)
    {
        <li class="haschlid" id="@i.departmentID">
            <a href="#">@i.departmentName</a>
            <ul class="sub-dep">
                @GetTree(department, @i.departmentID)
            </ul>
        </li>
    }
    else
    {
        <li id="@i.departmentID">
             <a href="#">@i.departmentName</a>
        </li>
    } 
  }       
}
@helper GetTree(列出部门,int-parentID){
foreach(部门中的变量i,其中(a=>a.headDepartmentID.Equals(parentID)))
{        
{var childDepartments=department.Where(a=>a.headDepartmentID.Equals(i.departmentID)).Count();
如果(部门>0)
{
    • @GetTree(department,@i.departmentID)
  • } 其他的 {
  • } } }
    下面是上面提到的观点。正如你所看到的,我本来想做一个局部的观点,但我不确定我的方向是否正确

    <div class ="containerStructure">
            <div class="leftDivStructure">
                @if (Model != null && Model.Count() > 0)           
                {
                     <ul class="list" id="deplist">
                          @Treeview.GetTree(Model, Model.FirstOrDefault().headDepartmentID)
                    </ul>
                }
            </div>
            <div class="rightDivStructure">
                Employee
                @*@Html.Partial("_PeopleInDepartment", new {depID =  Model.departmentID()})*@
            </div>
        </div>
    
    
    @if(Model!=null&&Model.Count()>0)
    {
    
      @Treeview.GetTree(Model,Model.FirstOrDefault().headDepartmentID)
    } 雇员 @*@Html.Partial(“_PeopleInDepartment”,新的{depID=Model.departmentID()})*@
    My employee和department类都有DepartmentID字段,因此当在我的树状视图中单击某个部门时,应该将参数()传递到局部视图,或者传递到任何需要在那里处理参数并显示员工的内容。下面是我认为必须获取结果的控制器

    public ActionResult PeopleInDepartment(int depID)
            {
                List<Person> peopleList = new List<Person>();
                peopleList = Persons.GetPersons(depID);
                return View(peopleList);
            }
    
    public ActionResult PeopleInDepartment(内部部门ID)
    {
    List peopleList=新列表();
    peopleList=Persons.GetPersons(depID);
    返回视图(peopleList);
    }
    

    如需进一步澄清,请发表评论!

    不确定您的问题是什么。您是否在问这是否是一个好方法?是的,这是我的想法,但我无法使其生效。这是一个好方法吗?我如何将departmentID参数传递给我的部分视图?