В контроллере нет «HTML DropDownList». HTML не отображался, пока не прошел просмотр. (На самом деле, вы не должны иметь какое-либо отношение к необработанному HTML или любой функциональности уровня просмотра в контроллере. Эти проблемы должны быть четко разделены.)
Причина, по которой он показывает вам "System.Web.Mvc.SelectList"
, заключается в том, что вы вызываете .ToString()
для ссылочного объекта (ddl
, который имеет тип System.Web.Mvc.SelectList
). Поведение по умолчанию .ToString
на object
- возвращать имя класса. (Это имеет смысл, учитывая, что object
не знает, какие другие функции могут представлять его потомки.)
Остается еще больший вопрос ... Почему вам нужно это сделать? Как я уже сказал, Контроллер не должен знать или заботиться о представлении, которое будет сгенерировано из него. Действительно, контроллер должен быть повторно использован и для других представлений. Поэтому мне приходит в голову, что, возможно, есть гораздо лучший способ решить коренную проблему, с которой вы столкнулись, если мы сделаем шаг назад.