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

Foi útil?

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

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top