Como você definir [ScaffoldColumn (false)] para ser o padrão para dados dinâmicos?

StackOverflow https://stackoverflow.com/questions/1440272

  •  10-07-2019
  •  | 
  •  

Pergunta

Eu tenho um número de tabelas com muitas colunas que eu estou usando dados dinâmicos com. Eu só quero mostrar um pequeno subconjunto das colunas.

Atualmente, quando Dynamic Data andaimes uma tabela que cria todas as colunas, a menos que defina [ScaffoldColumn (false)] para false. Isso funciona, mas como eu só quero mostrar um pequeno subconjunto das colunas que seria mais fácil para transformá-los em vez de off.

Existe uma maneira de mudar o comportamento padrão para uma coluna não é scaffolded a menos que eu diga a ele para?

Foi útil?

Solução

Eu não sei de uma maneira de fazer isso fora da caixa. No entanto, você pode criar seu próprio atributo personalizado para fazer isso.

Eis alguns exemplos de como criar um atributo personalizado para controlar como DD funciona:

http: //csharpbits.notaclue .net / 2009/04 / esconder-foreign-key-column-globalmente-in.html -. Amostra de criar um atributo para ocultar a coluna de chave estrangeira para todas as tabelas

http: //csharpbits.notaclue .net / 2008/10 /-de dados dinâmicos-escondendo-colunas-em-selected.html -. Amostra de outro atributo para ocultar uma coluna, mas aplicado ao nível da página

Eu vejo o primeiro onde ele está definido no nível de tabela, talvez, a sua melhor aposta. Você pode criar seu próprio HideFieldsByDefault atributo digamos e defini-la como verdadeira.

Você, então, adicionar os seus campos que você quer ser mostrado com ScaffoldColumn como true e no código para o método GenerateFields do IAutoFieldGenerator você iria em seguida, olhar para o seu atributo personalizado e código de acordo e se o seu atributo não era o seu, então você faria basta usar o caminho DD padrão.

Você também pode ser capaz de fazer isso com seu próprio provedor de metadados:

http://mattberseth.com/blog/2008/08/dynamic_data_and_custom_metada.html

Neste, eu não sei exatamente como você poderia fazê-lo com um provedor personalizado, mas talvez um pouco de pesquisa vai revelar como uma boa opção.

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