高级@ Html.DropDownListFor()参数说明

时间:2013-10-03 20:01:54

标签: c# asp.net-mvc html-select

我在S.O.开了一个问题。处理这个下拉列表的实现,但是我正忙着使用它的模型。

所以有两个问题:

@Html.DropDownListFor(m => m.Id, new SelectList(ViewBag.CompanyList as System.Collections.IEnumerable,"CoId","CompanyName"))

什么是m => m.Id实际上在这里做什么?

“CoId”是否设置为值并且“CompanyName”设置为文本?

这是我的模特:

public class CompanyViewModel
    {
        public int Id { get; set; }
        public string CompanyName { get; set; }

    }
    public class CompanyViewModelDbContext : DbContext
    {
        public DbSet<CompanyViewModel> Contacts { get; set; }
    }

2 个答案:

答案 0 :(得分:0)

  

什么是m =&gt; m.Id实际上在这里做什么?

将模型中的值设置为DDL。

  

“CoId”是否设置为值并且“CompanyName”设置为文本?

是和否,“CoId”是您的DDL的值,但是,您没有任何属性“CoId”,因此,您需要更改为“Id”。

答案 1 :(得分:0)

m => m.IdId的{​​{1}}属性设置为由下拉列表控制的值(也会在加载时设置所选值)。

Model定义了,"CoId","CompanyName"项的哪些属性被用作文本。它说,“使用IEnumerable作为值,并在CoId中的每个项目的下拉列表中显示CompanyName。”

正如 BetaSystems - Rodrigo D 所说,由于您没有ViewBag.CompanyList属性,因此应将其更改为CoId