У меня было это требование некоторое время назад.Хорошей новостью является то, что решение является простым.Плохая новость заключается в том, что она включает в себя копирование / вставку большого кода из источника MVC3.
Пожалуйста, найдите код , вставленный здесь , поскольку это действительно слишком много длявставить в строку.
Он состоит из интерфейса IHtmlAttributes
(для объекта, который может переносить такие данные), класса SelectListItemWithAttributes
(вы будете создавать объекты этого класса) и статического класса, в котором выпотребуется вставить множество методов расширения.
После того, как вы это сделаете, это довольно просто:
var item = new SelectListItemWithAttributes(new { @class = "inactive" });
item.Text = "Foo";
item.Value = "Bar";
Вы помещаете все это в любой IEnumerable<SelectListItemWithAttributes>
, вызываете один из DropDownList
семейство методов, вставленных в статический вспомогательный класс, и это все, что нужно.