I need to group elements internally DropDownListForin MVC 4.
I have a few drop down lists of both teams and projects. Based on the team, I get projects for which I have a table as a project that contains a column called entitytype. There are 3 types of objects, such as client, destination, and project.
I wrote a request to get team based projects. Now I want to group projects based on entity type.
For example, for Team1 there are 5 projects as 2 clients, 2 tasks and 1 project. Therefore, it should display as:
In the first dropdown menu:
In the second drop-down list:
Project:
- Customer
- Customer 1
- Client 2
, , , , , .
: , .
, Entitype, .
:
public List<Project> GetAllProjectForTeam(int teamId)
{
List<Project> project = new List<Project>();
var query = (from p in db.Projects.AsEnumerable()
join pt in db.ProjectTeams.AsEnumerable() on p.ProjectId equals pt.ProjectId
join tm in db.Teams.AsEnumerable() on pt.TeamId equals tm.TeamId
where pt.TeamId == teamId
select p
).ToList();
project = query.Distinct().ToList<Project>();
return project.ToList();
}
- :
<div class="editor-label">
@Html.LabelFor(model => model.TeamId,"Team")
</div>
<div class="cssclass">
@Html.DropDownListFor(model => model.TeamId, new SelectList(Model.ddlTeam, "Value", "Text"), "Select Team", new { id = "TeamID", onchange = "GetProjects()", @class = "form-control", UpdateTargetId = "atag" })
@Html.ValidationMessageFor(model => model.TeamId)
</div>
<div class="editor-label">
@Html.LabelFor(model => model.ProjectId, "Project")
</div>
<div class="cssclass">
@Html.DropDownListFor(model => model.ProjectId, new SelectList(Model.ddlProject, "Value", "Text"), "Select Project", new { id = "ProjectID", onchange = "ShowDocsList()", @class = "form-control" })
@Html.ValidationMessageFor(model => model.ProjectId)
</div>
, . . , - .
.