C# Dropdown-获取每个选项的值是否与文本相同?

C# Dropdown-获取每个选项的值是否与文本相同?,c#,asp.net-mvc,C#,Asp.net Mvc,我试着做一些简单的事情——我开始学习MVC,我有点困惑。我有一个下拉列表,可以生成以下内容 <selectid="selectMenu" name="selectMenu"> <option value="Weekly">Weekly</option> <option value="Monthly">Monthly</option> <option v

我试着做一些简单的事情——我开始学习MVC,我有点困惑。我有一个下拉列表,可以生成以下内容

<selectid="selectMenu" name="selectMenu">
<option value="Weekly">Weekly</option>
<option value="Monthly">Monthly</option>
<option value="Quarterly">Quarterly</option>
<option value="Annually">Annually</option>
</select>

周报
月刊
季刊
每年
因此,我在我的观点中增加了以下内容-

<% string[] rate = new string[]{"Weekly","Monthly","Quarterly","Annually"}; %>
<%: Html.DropDownList("selectMenu", new SelectList(rate))%>

然而,这产生了以下结果:

<select DataTextField="" DataValueField="" Items="System.String[]" SelectedValue="" SelectedValues="" id="selectMenu" name="selectMenu">
<option>Weekly</option>
<option>Monthly</option>
<option>Quarterly</option>
<option>Annually</option>
</select>

周报
月刊
季刊
每年
如何使每个选项的值与文本相同

也许我应该坚持使用JavaScript?


<% var rate = new Dictionary<string, string> { { "Weekly", "Weekly" }, { "Monthly", "Monthly" }, { "Quarterly", "Quarterly" }, { "Annually", "Annually" } }; } %>

<%: Html.DropDownList("selectMenu", new SelectList(rate, "Key", "Value"), "--please select--") %>

您可以只使用循环,而不使用html帮助程序(语法可能已关闭)


如果您刚刚开始,我建议您使用asp.net-mvc3中的Razor视图引擎。语法是:

<select id="selectMenu" name="selectMenu">
@( string[] rates = new string[]{"Weekly","Monthly","Quarterly","Annually"}; )
@foreach (string rate in rates)
{
   <option value="@rate">@rate</option>
}
</select>

@(字符串[]费率=新字符串[]{“每周”、“每月”、“季度”、“每年”};)
@foreach(以速率表示的字符串速率)
{
@比率
}

这就是浏览器中呈现的html吗?
<select id="selectMenu" name="selectMenu">
@( string[] rates = new string[]{"Weekly","Monthly","Quarterly","Annually"}; )
@foreach (string rate in rates)
{
   <option value="@rate">@rate</option>
}
</select>