我想我在这里遗漏了一些东西。我有一个 ASP.NET MVC 4 应用程序。在我看来,我有一个与我的模型相关联的下拉列表。直截了当的东西。
@Html.DropDownListFor(x => x.GaragingAddress.State,
POSBridge.Helpers.StateAbbreviations(),
new {id="ADStreetState"})
我引用的辅助函数在这里(它不是最有效的,但现在我专注于功能证明而不是性能。)
namespace POSBridge
{
public class Helpers
{
public static List<SelectListItem> StateAbbreviations(bool includeTerritories = false)
{
List<string> abbreviations = new List<string>
{
"",
"AL", "AK", "AZ", "AR", "CA", "CO", "CT", "DE", "DC", "FL", "GA", "HI", "ID", "IL", "IN", "IA", "KS", "KY", "LA", "ME", "MD",
"MA", "MI", "MN", "MS", "MO", "MT", "NE", "NV", "NH", "NJ", "NM", "NY", "NC", "ND", "OH", "OK", "OR", "PA", "RI", "SC", "SD",
"TN", "TX", "UT", "VT", "VA", "WA", "WV", "WI", "WY"
};
if (includeTerritories)
{
abbreviations.AddRange(new string[] { "AS", "GU", "MP", "PR", "VI", "UM" });
}
List<SelectListItem> items = new List<SelectListItem>();
foreach (string s in abbreviations) items.Add(new SelectListItem { Text = s, Value = s });
return items;
}
}
}
呈现页面时,未填充具有状态的选择列表。所有状态值都显示在下拉列表中。页面上的其他下拉列表被正确填充,当我在此处放置断点并检查即时窗口中的模型值时,Model.GarageAddress.State 属性肯定有一个值。因此,我确信它可能与我编写的 Helper 函数有关,但我不确定是什么/如何。
TIA