Comment définissez-vous [ScaffoldColumn (false)] comme valeur par défaut pour Dynamic Data?

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

  •  10-07-2019
  •  | 
  •  

Question

J'utilise un certain nombre de tables avec beaucoup de colonnes. Je veux seulement montrer un petit sous-ensemble des colonnes.

À l'heure actuelle, lorsque Dynamic Data scaffle une table, toutes les colonnes sont créées, sauf si je règle [ScaffoldColumn (false)] sur false. Cela fonctionne, mais comme je ne souhaite afficher qu'un petit sous-ensemble de colonnes, il serait plus facile de les activer que de les désactiver.

Y a-t-il un moyen de changer le comportement par défaut pour qu'une colonne ne soit pas échafaudée à moins que je ne le lui dise?

Était-ce utile?

La solution

Je ne connais pas de moyen de faire cela en dehors de la boîte. Cependant, vous pouvez créer votre propre attribut personnalisé pour le faire.

Voici quelques exemples sur la manière de créer un attribut personnalisé pour contrôler le fonctionnement de la DD:

http: //csharpbits.notaclue .net / 2009/04 / hiding-foreign-key-column-globally-in.html - Exemple de création d'un attribut pour masquer la colonne de clé étrangère de toutes les tables.

http: //csharpbits.notaclue .net / 2008/10 / dynamique-masquage-de-données-dynamiques-dans-selected.html - Exemple d'un autre attribut permettant de masquer une colonne mais appliqué au niveau de la page.

Je vois le premier où il est défini au niveau de la table peut-être votre meilleur pari. Vous pouvez créer votre propre attribut, par exemple HideFieldsByDefault et le définir sur true.

Vous ajouteriez ensuite à true les champs que vous souhaitez afficher avec ScaffoldColumn et dans le code de la méthode GenerateFields de IAutoFieldGenerator, vous rechercheriez ensuite votre attribut personnalisé et votre code en conséquence. utilisez simplement la méthode DD par défaut.

Vous pouvez également le faire avec votre propre fournisseur de métadonnées:

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

Sur ce point, je ne sais pas exactement comment vous pouvez le faire avec un fournisseur personnalisé, mais peut-être qu'un peu de recherche révélera que c'est une bonne option.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top