Как установить значение по умолчанию для выбора списка в MVC во время выполнения

У меня есть вид, в котором он проходит через модель и отображать детали в редактируемом режиме. Одно из значений модели из списка выбора, как показано ниже

@if (Model != null)
    {
    for (int i = 0; i < Model.provider_service_dtls.Count; i++)
     {
    <tr>
    <td> @Html.DropDownListFor(m => m.provider_service_dtls[i].activity_code_type,
 (SelectList)@ViewBag.activity_code_type, "--- Select Activity Code Type ---", new { @class = "m-wrap" })</td>
    <td>@Html.TextBoxFor(m => m.provider_service_dtls[i].activity_name)</td>    
    </tr>

    }
    } 

ЗдесьViewBag.activity_code_type содержать значенияInternal & Standard при отправке, если выбран пользовательInternal его ценность1 перейдет к контроллеру и еслиStandard это будет2 и здесь значение по умолчанию будет"--- Select Activity Code Type ---"

Теперь, когда я открываю тот же запрос в режиме редактирования, если значение модели дляprovider_service_dtls[i].activity_code_type является1 список выбора должен быть выбран по умолчанию какInternal а такжеStandard если это2.

Я так закодировал

    @Html.DropDownListFor(m => m.provider_service_dtls[i].activity_code_type,
 (SelectList)@ViewBag.activity_code_type, Model.provider_service_dtls[i].activity_code_type)

Но он работает не так, как ожидалось, он дает результат, как показано ниже

Здесь должно быть выбрано по умолчаниюInternal, Что такое изменение, чтобы сделать то же самое?

отредактированный

модель

public partial class provider_service_dtls
    {
        [Key]
        [DatabaseGenerated(DatabaseGeneratedOption.Identity)]
        public long service_id { get; set; }

        public long preapproval_id { get; set; }

        public string activity_code_type { get; set; }
        public string activity_type { get; set; }

        public string activity_type_name { get; set; }


        public string activity_code { get; set; }
        public string activity_name { get; set; }
        public string internal_activity_code { get; set; }
        public string internal_activity_name { get; set; }


        [ForeignKey("preapproval_id"), InverseProperty("provider_service_dtls")]
        public virtual provider_preapproval preapproval { get; set; }


    }

Шаблон редактора

@model Provider.Models.provider_preapproval
@Html.DropDownListFor(m => m.activity_code_type, (SelectList)ViewData["options"])

Посмотреть

Внутри для цикла я закодировал, как это

  @Html.EditorFor(m => m.provider_service_dtls,
new { options = (SelectList)@ViewBag.activity_code_type })

Я получаю ошибку

«System.Web.Mvc.HtmlHelper» не содержит определения «EditorFor» и наилучшей перегрузки метода расширения «System.Web.Mvc.Html.EditorExtensions.EditorFor (System.Web.Mvc.HtmlHelper, System.Linq.Expressions .Expression>, string, object) 'имеет недопустимые аргументы

Ответы на вопрос(2)

Ваш ответ на вопрос