2013-07-10 2 views
1

У меня есть представление, в котором я буду разбираться в нем из html-вспомогательных функций.Прокрутите свойства в модели в C#, mVC4

@using PartyBiz.Models.Objects 
@model IEnumerable<Person> 
@Html.PageStructureEntity(Model) 

я написал ниже метод выборки для возврата содержимого для просмотра:

public static MvcHtmlString PageStructureEntity(this HtmlHelper helper, Person m) 
    { 
     TagBuilder 
       stdDiv = MvcUtils.GetStdDiv(); //Parent Site Part Version's container 


     switch (m.FirstName.GetType().FullName) 
     { 
      case "System.String": 
       TagBuilder input = MvcUtils.GetStdInput(); 
       input.Attributes.Add("value", m.FirstName); 
       stdDiv.InnerHtml = input.ToString(); 
       break; 

      default: 
       return null; 
     } 
     return MvcHtmlString.Create(stdDiv.ToString()); 
    } 

я должен проходным каждая модель объекта в IEnumerable и каждое свойство в этой модели объекте, оказывают входы или флажки или по времени по их типу.

Моя проблема в том, что я делаю это в довольно стандартном стиле. Есть ли лучший подход для этого, чтобы лучше писать код, что-то с помощью дженериков или встроенных вспомогательных функций?

Ваши предложения очень помогает ..

ответ

2

Вы можете попробовать использовать

@Html.EditorForModel() 

Это сделает все шаблоны редактора по умолчанию для ваших моделей свойств.

См this для более подробной информации

+0

EditorForModel() не работает для нас. мы должны использовать наши собственные выпадающие окна текстовых полей и т. д., также представление должно быть общим, оно должно быть в состоянии принять любую модель и позволить ей редактировать. – mmssaann

Смежные вопросы