Передача данных модели в шаблоны EditorTemplates asp.net mvc

StackOverflow https://stackoverflow.com/questions/2080872

  •  21-09-2019
  •  | 
  •  

Вопрос

СкоттГу в этом посте текст ссылки показывает, как можно использовать EditorTemplates для таких вещей, как раскрывающийся список стран.Мой вопрос: как передать динамический список стран в EditorTemplate?

Это было полезно?

Решение

Вы можете передать его Просмотр данных и передавать ViewData из и ActionFilter, если данные требуются очень часто (хотя это спорно). антишаблон).

Другие советы

Еще лучше, если вы сделаете частичное представление строго типизированным и передадите модель помощнику EditorFor.

@Html.EditorFor(m=>m.SelectedCountry, Model.AvailableCountries)

Вероятно, самым элегантным решением является использование пользовательского атрибута. Позже вы сможете получить доступ к метаданным модели, используя:ВьюДанные.МодельМетаданные.

например:

 [Foreign(Type="DropDown", TableName="Countries")]
   public int IdCountry { get; set; }

где ForeignAttribute — это класс, который вы должны объявить, а затем использовать его для создания шаблона редактора.

Похоже на ответ @Benja

Вы также можете использовать атрибут [AdditionaMetaData(key,value)] аналогичным образом без необходимости определять собственный атрибут.Ключ и значение должны быть строками.

Дополнительные данные можно получить в представлении с помощью:@ViewData.ModelMetadata.AdditionalValues["DropDownData"]

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top