Je vais essayer d'être bref et clair avec cette question.
Nous avons une application asp.net mvc qui utilise entity framework 4.
Notre modèle économique est relativement simple : Nous avons un objet (qui correspond à une table) appelé Photo(s). Cette table de photos a une poignée de colonnes qui correspondent aux propriétés de l'objet. Description, titre, date, etc. Elle possède également un certain nombre de colonnes qui font référence à des clés étrangères pour d'autres tables : AuthorId, LicenseId etc...
Les tables d'auteurs et de licences sont complexes en soi, avec des champs multiples (Titre, Résumé, Date, etc.).
J'ai plusieurs clients qui utilisent cette application pour visualiser leurs photos. J'aimerais que chaque client puisse dicter les champs qu'il voit lorsqu'il visualise les photos, ainsi que ceux qu'il voit lorsqu'il modifie ces champs.
J'ai l'intention de configurer des tables indiquant que le client-a doit voir les champs 1, 2 et 3 lorsqu'il consulte ses photos, et que le client-b doit voir les champs 1, 4 et 5. Mais certains de ces champs ne sont pas simplement des colonnes dans la table principale des photos, ils peuvent être des champs dans une table enfant. Ainsi, Field1 pourrait être : Table.Photos.Title -> qui correspond à un objet comme : Objects.Photo.title... mais Field3 pourrait être : Table.Licenses.LicenseSummary -> qui correspond à un objet comme : Objects.Photo.License.LicenseSummary
J'essaie de comprendre la méthodologie que nous utiliserions pour avoir un environnement très axé sur les données, de sorte que dans la base de données, je puisse dire, affichez cet objet/cette propriété (pour l'afficher ou l'éditer) et ensuite il saurait comment se connecter à n'importe quelle table dont il a besoin pour extraire cette information. également, pendant l'édition... donnez-lui un moyen d'extraire une liste de valeurs disponibles si c'est ce type de propriété, et pas seulement un champ de texte.
Je cherche un exemple de ce que cela pourrait impliquer, notre modèle est en fait plus complexe que cela, mais c'est juste une idée de ce que nous essayons d'accomplir. Je ne sais pas si ce que j'essaie de faire est normal, peut-être cela implique-t-il une réflexion ? C'est un domaine nouveau pour moi.