我所有的表都有EmployeeDetails表,这是我从表中查询需要的列的linq查询...现在我想将这些数据绑定到DropDown我该怎么做
var EmployeeDetails = db.EmployeeDetails.ToList<EmployeeDetail>().Select(e => new
{
id=e.EmployeId,
Name = e.EmployeeName
}).ToList();
这是我的控制器
public ActionResult Index()
{
return View();
}
答案 0 :(得分:0)
您必须将模型传递给您查看。只有这样,您才能将任何数据绑定到下拉列表。 看看this article。
答案 1 :(得分:0)
你应该真的使用ViewModel ..
这样的事情......
员工详情DTO:
public class EmployeeDetails
{
public int Id {get;set;}
public string Name {get;set;}
}
查看模型有点像这样:
public class EmployeeViewModel
{
public EmployeeDetails EmployeeDetails {get;set;}
}
你的行动可能看起来像这样:
public ActionResult Index()
{
//Setup a viewmodel
var viewModel = new EmployeeViewModel();
viewModel.EmployeeDetails = //your query to get employee details
return View(viewModel);
}
然后在视图中你可以做一些像这样的事情:
@model {fullnamespace}.EmployeeViewModel
<select>
<option> --- Select Option --- </option>
@foreach (var employeeDetail in Model.EmployeeDetails)
{
<option value="@employeeDetail.Id">@employeeDetail.Name</option>
}
</select>