-1

我有一个关于 SO 处理这个下拉列表的实现的问题,但我正在挂断使用它的模型。

所以两个问题:

@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; }
    }
4

2 回答 2

0

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

正在将模型中的值设置到 DDL 中。

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

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

于 2013-10-03T20:05:41.087 回答
0

m => m.Id正在将 的Id属性设置Model为由下拉列表控制的值(这也将在加载时设置选定的值)。

,"CoId","CompanyName"正在定义您的IEnumerable项目的哪些属性被用作valuetext。它的意思是,“CoId用作值并显示CompanyName在下拉列表中的每个项目中ViewBag.CompanyList。”

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

于 2013-10-03T20:09:18.910 回答