0

大家好,我有 EmployeeDetails 表,这是我的 linq 查询,用于从表中获取所需列...现在我想将此数据绑定到 DropDown 我该怎么做

 var EmployeeDetails = db.EmployeeDetails.ToList<EmployeeDetail>().Select(e => new
        {
           id=e.EmployeId,
          Name = e.EmployeeName
        }).ToList(); 

这是我的控制器

  public ActionResult Index()
    {                       
        return View();
    }
4

2 回答 2

0

您必须将模型传递给您的视图。只有这样,您才能将任何数据绑定到下拉列表。看看这篇文章

于 2012-08-24T12:00:12.667 回答
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>
于 2012-08-24T12:26:05.673 回答