2009-09-18 118 views
0

我有一个故障,应该填充与数据库中的ID键相对应的值的dropdownlist。所以,理想我想要的东西,看起来像这样在下拉列表中ASP.net MVC Dropdownlist问题

值=“0”美国 值=“1” ETC

和我后面的代码看起来像这样

public TabletViewModel(Tablet tablet) 
    { 
     Tablet = tablet; 
     //AreaHelper.Areas, tablet.Location.Name 
     Areas = new SelectList(AreaHelper.Areas, tablet.Location.Name); 
    } 

每当我尝试将溢出方法添加到选择列表构造函数我尝试添加LocationID时遇到异常错误

任何人有什么想法?

+0

你得到什么类型的错误? – 2009-09-18 18:38:02

+0

DataBinding:'System.String'不包含名为'AWING'的属性。 当我改变我的构造函数为:Areas = new SelectList(AreaHelper.Areas,tablet.Location.Name,tablet.LocationID.ToString()); – Jimmy 2009-09-18 18:41:04

+0

我是新来的,任何人都可以告诉我代码的第三行是干什么的! – 2009-09-19 14:23:37

回答

1

我想通了这个问题,了IEnumerable我经过了一个特定的列,而不是整个表,所以,当我试图做

新的SelectList(AreaHelper.Areas,tablet.Location.Name,平板电脑。 LocationID.ToString())

,并得到了错误:“字符串不包含属性名称”

现在一切正常

0

是否您的列表AreaHelper.Areas支持IEnumerable?

是tablet,tablet.Location还是tablet.Location.Name是否为空?

+0

AreaHelper.Areas是一个Ienumerable,它返回区域的名称,并且tablet.Location是一个位置表,并且tablet.Location.Name不是null,它的名称与locationID相关联,我只想要locationId成为与每个选项相关的价值 – Jimmy 2009-09-18 19:01:36