C# DropdownList未显示所选项目

C# DropdownList未显示所选项目,c#,asp.net-mvc-3,C#,Asp.net Mvc 3,我正在创建一个页面来编辑不符合项报告。该页面采用如下模型: @{ var faultCodeList = new List<SelectListItem> { new SelectListItem { Text = "Internal Damage", Value = "Internal Damage" }, new SelectListIt

我正在创建一个页面来编辑不符合项报告。该页面采用如下模型:

@{
                var faultCodeList = new List<SelectListItem>
                {
                    new SelectListItem { Text = "Internal Damage", Value = "Internal Damage" },
                    new SelectListItem { Text = "Customer Problem", Value = "Customer Problem"  },
                    new SelectListItem { Text = "Incorrect Material Supplied", Value = "Incorrect Material Supplied"  },
                    new SelectListItem { Text = "Received Material Damaged", Value = "Received Material Damaged"  },
                    new SelectListItem { Text = "No Test Certificate Supplied", Value = "No Test Certificate Supplied" },
                    new SelectListItem { Text = "Other", Value = "Other", Selected = true}
                };
            }

            @Html.DropDownList("FaultCode", faultCodeList)

在页面上,我试图显示一个下拉列表,其中包含预先选择的
FaultCode
属性的当前值。然而,它不起作用。相反,我将其剥离到基本内容,并尝试硬编码一个预选值,如下所示:

@{
                var faultCodeList = new List<SelectListItem>
                {
                    new SelectListItem { Text = "Internal Damage", Value = "Internal Damage" },
                    new SelectListItem { Text = "Customer Problem", Value = "Customer Problem"  },
                    new SelectListItem { Text = "Incorrect Material Supplied", Value = "Incorrect Material Supplied"  },
                    new SelectListItem { Text = "Received Material Damaged", Value = "Received Material Damaged"  },
                    new SelectListItem { Text = "No Test Certificate Supplied", Value = "No Test Certificate Supplied" },
                    new SelectListItem { Text = "Other", Value = "Other", Selected = true}
                };
            }

            @Html.DropDownList("FaultCode", faultCodeList)
@{
var faultCodeList=新列表
{
新建SelectListItem{Text=“内伤”,Value=“内伤”},
新建SelectListItem{Text=“Customer Problem”,Value=“Customer Problem”},
新建SelectListItem{Text=“提供的材料不正确”,Value=“提供的材料不正确”},
新建SelectListItem{Text=“已收材料损坏”,Value=“已收材料损坏”},
新建SelectListItem{Text=“未提供测试证书”,Value=“未提供测试证书”},
新建SelectListItem{Text=“Other”,Value=“Other”,Selected=true}
};
}
@Html.DropDownList(“FaultCode”,faultCodeList)
这仍然不起作用。但是,如果我将字段的名称更改为除
FaultCode
-即
FaultCode2
-以外的其他名称,则可以正常工作

为什么我会看到这种奇怪的行为?在同一页上,我有其他字段的下拉列表,它们工作得非常好

@Html.DropdownList("FaultCode", new SelectList(faultCodeList, "Value", "Text","Other"))

您需要绑定到SelectList而不是List,这样您可以提及选定值的最后一个参数是“Other”。

什么是“not working”(不工作)?不显示应该显示的内容?未选择“Other”项-它默认为列表中的第一项。好的,这似乎正在工作(虽然您在下拉列表中缺少大写字母“D”)。我确信我之前有类似的代码,但它不工作。。。