Установить атрибуты @ Html.Textbox () динамически? - PullRequest
0 голосов
/ 26 июня 2018

Это должно быть довольно просто, но у меня есть небольшая проблема. Я генерирую элементы управления динамически, и каждый элемент управления может иметь свои атрибуты html (data-blah = "blah" и т. Д.). Я подумал, что могу сохранить атрибуты в словаре, а затем добавить этот словарь в помощник HTML в представлении.

 foreach (var prop in props)
 {
      var PropertyToRender = Model.PropertiesToRender.Where(x => x.Key == prop.Key.Name).ToList();

      if (PropertyToRender.Any())
      {
           var field = PropertyToRender.First().Value;

           if (field.Tag == "input")
           {
                <div class="m-form--group m-form--group-inset">
                     <label>@(prop.Value.Name ?? prop.Key.Name)</label>
                     @Html.TextBox(prop.Key.Name, prop.Key.GetValue(Model), field.Attributes.ToStrng())
                     @Html.ValidationMessage(prop.Key.Name)
                </div>
           }
       }
 }

Я использую отражение, чтобы получить свойства модели props, затем поиск PropertiesToRender, чтобы увидеть, нужно ли отображать свойства модели. Наконец, атрибуты html находятся в field.Attributes. Мне просто нужен способ визуализации атрибутов HTML, все остальное работает нормально. Спасибо

1 Ответ

0 голосов
/ 26 июня 2018

Я - шут - просто нужно преобразовать мой словарь в анонимный объект.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...