definindo a anotação de dados do nome de exibição dinamicamente no asp.net mvc
-
14-09-2020 - |
Pergunta
Eu tenho uma tabela de banco de dados com os seguintes campos
item_key, item_value, display_name, uihint
Quero poder especificar na tabela do banco de dados qual modelo de exibição usar e também o nome de exibição.
<%= Html.EditorFor(p=>pageField.item_value, pageField.uihint) %>
O UIHint está funcionando, mas não consigo descobrir uma maneira de definir o nome de exibição dinamicamente, o código acima está produzindo algo como
item_valor TEXTBOX
item_valor TEXTBOX
item_valor TEXTBOX
Onde desejo que os títulos item_values sejam extraídos do campo display_name.
É possível fazer isso com anotações de dados?Estive olhando para http://msdn.microsoft.com/en-us/library/system.componentmodel.dataannotations.displayattribute%28v=VS.95%29.aspx e pesquisando, mas não consegui encontrar nenhum exemplo do que procuro
Solução
Você precisa implementar seu ModelMetaDataProvider personalizado para fazer isso.Este link deve ajudá-lo a começar:
http://dotnetslackers.com/articles/aspnet/Customizing-ASP-NET-MVC-2-Metadata-and-Validation.aspx