Я обычно обрабатываю выпадающие списки / блоки выбора в MVC со статическим свойством в классе Collection в моделях.
Пример:
using System.Collections.Generic;
namespace SomeProject.Models
{
public class Collections
{
public static Dictionary<string, string> AccountType = new Dictionary<string, string>
{
{ "", "" },
{ "ee5711b9-ec86-4378-a975-ae10a4ebedbc", "Volvo Account" },
{ "0dc0e9d8-2245-43de-81a9-5b94c19646fa", "Saab Account" },
{ "f9a05ef6-9ca6-4eeb-9e04-79726a62b38c", "Mercedes Account" },
{ "1c5c2e43-06d6-4b7d-916a-231be535a608", "Audi Account" }
};
}
}
Тогда я бы отображал DropDown в виде:
<%= Html.DropDownList("AccountType", new SelectList(SomeProject.Models.Collections.AccountType, "Key", "Value", Convert.ToString(ViewData["AccountType"])), "", new { tabindex = "3", @class = "dropdown" }) %>
Теперь эта коллекция доступна для всего вашего приложения. Вы можете получить любое удобное для пользователя имя с помощью:
SomeProject.Models.Collections.AccountType[ViewData["AccountType"]]
Вы даже можете вынести коллекцию в представление, если хотите.
Надеюсь, это поможет.