Fala, galera!!
Quando definimos um filtro cuja a origem é uma chave estrangeira o Dynamic Data gera uma combo.
Isto é definido pelo usercontrol ForeignKey.ascx que fica no diretório FilterTemplates.
Por padrão, o campo exibido na propriedade "Text" do dropdown é sempre o primeiro campo logo após a chave primária.
Mas como definir manualmente a propriedade "Text" de cada item da combo e a ordem com que os mesmos aparecerão?
Simples!
Basta adicionar o seguinte código no metadata da tabela origem da chave estrangeira. Ou seja, onde ela é a chave primária.
<DisplayColumn("Descricao", "Descricao", False)> _
<MetadataType(GetType(Evento_Metadata))> _
O código em negrito é o que deve ser adicionado logo acima da declaração do MetadataType.
Desta forma, seu Dropdownlist ou seu listbox exibirão o campo "Descricao" e serão ordenados pelo mesmo campo por ordem alfabética.
OBS: No exemplo acima utilizei o relacionamento entre uma tabela chamada "Log" e outra chamada "Evento" e inseri um filtro por "Evento" na tabela de Log.
Um abraço e até a próxima!!
domingo, 28 de fevereiro de 2010
Asp.Net Dynamic Data - Ordenando e Definindo os campos para filtros de chave estrangeira
Marcadores:
Asp.Net Dynamic Data,
Chave Estrangeira,
Foreign Key,
Ordenando Filtros
Assinar:
Postar comentários (Atom)
Nossa isso foi muito útil, obrigada
ResponderExcluirObrigado e volte sempre!!
Excluir