Ваш вызов Html.DropDownList () создаст HTML, который выглядит следующим образом:
<select name="ServiceTypeListAll">
<option value="1">Service Type 1</option>
<option value="2">Service Type 2</option>
<option value="3">Service Type 3</option>
</select>
Атрибут value предназначен для того параметра, который будет выбран в FormCollection. Если вы действительно хотите использовать строку ServiceTypeName вместо ServiceTypeId, вы можете изменить конструктор SelectList следующим образом:
_viewModel.ServiceTypeListAll = new SelectList(_bvRepository.GetAllServiceTypes().ToList().OrderBy(n => n.ServiceTypeName).ToList(), "ServiceTypeName", "ServiceTypeName");
для создания HTML, который выглядит следующим образом:
<select name="ServiceTypeListAll">
<option value="Service Type 1">Service Type 1</option>
<option value="Service Type 2">Service Type 2</option>
<option value="Service Type 3">Service Type 3</option>
</select>
Кроме того, кстати, вы должны быть в состоянии упростить ваш HtmlHelper вызов этого:
<%=Html.DropDownList("ServiceTypeListAll", Model.ServiceTypeListAll)%>
Нет необходимости создавать другой список SelectList ...