0

我的 有问题DropDownListFor,我想DropDownlist在我的视图上显示 1、2、3、4、5 等。

在我的模型课上:

public class PageModel 
{
   [DisplayName("Quantity")]
   public int Quantity { get; set; }
}

我创建了一个Quantity

 public class Quantity
    {
        public int Selection { get; set; }
    }

一个 HtmlList 类

public static class HtmlLists
    {
       public static IEnumerable<Quantity> Selections = new List<Quantity> { 
            new Quantity {
                Selection = 1
            },
            new Quantity {
                Selection = 2
            }
        };

在我看来:

@Html.LabelFor(m => m.Quantity):
        <td>@Html.DropDownListFor(m => m.Quantity, new SelectList(HtmlList.Selections, "Selection"))

它给了我一个错误HtmlList.Selections

当前上下文中不存在名称“HtmlList”

编辑:

我的错误问题已通过 @using YourNameSpaceofStaticClass 得到修复

但现在我有以下问题:

他没有向我显示下拉列表中的选择 1 和 2,而是向我显示:

模型命名空间.数量模型命名空间.数量

我认为这是因为我的列表是空的..

我的 Quantity 类的命名空间:

namespace ModelNamespace
{
4

1 回答 1

1

您需要在视图中包含静态类的命名空间。

@using RandomProject.Helpers;

还有一个建议,您可以在视图模型中创建一个属性,而不是创建静态类。

public class yourViewModel
{
      public IEnumerable<Quantity> Selections {get;set;}
}
于 2013-03-18T08:24:10.603 回答