J'ai un référentiel utilisant LINQ pour modéliser les données qui ont tout un tas de fonctions pour extraire des données. Un moyen très courant d'obtenir des données est pour des choses telles que des listes déroulantes. Ces listes déroulantes peuvent varier. Si nous créons quelque chose nous avons habituellement une liste déroulante avec toutes les entrées d'un certain type , ce qui signifie que j'ai besoin d'une fonction disponible qui filtre par le type d'entité. Nous avons également des pages pour filtrer les données, les listes déroulantes ne contiennent que des entrées qui sont actuellement utilisé, j'ai donc besoin d'un filtre qui nécessite des entrées utilisées. Cela signifie qu'il existe six requêtes différentes pour extraire le même type de données. Le problème avec la définition d'une fonction pour chacun de ceux-ci est qu'il y aurait six fonctions au moins pour chaque type de sortie, le tout dans un seul référentiel. Ça devient très grand, très rapide. Voici quelque chose que je comptais faire:Interface de référentiel - Fonctions disponibles et sortie de filtrage
public IEnumerable<Supplier> ListSuppliers(bool areInUse, bool includeAllOption, int contractTypeID)
{
if (areInUse && includeAllOption)
{
}
else if (areInUse)
{
}
else if (includeAllOption)
{
}
}
Bien que « areInUse » ne semble pas très anglais amical, je ne suis pas brillant avec nommage. Comme vous pouvez le voir, la logique réside dans ma couche d'accès aux données (référentiel) qui n'est pas conviviale. Je pourrais définir des fonctions séparées, mais comme je le dis, ça grandit assez vite.
Quelqu'un peut-il recommander une bonne solution?
NOTE: J'utilise LINQ pour entités que, je ne l'utilise pas pour interroger. S'il vous plaît ne demandez pas, c'est une contrainte sur le système non spécifié par moi. Si j'avais le choix, j'utiliserais LINQ, mais malheureusement pas.
Cor blimey, c'est plutôt cool. C'est à ce moment que j'ai besoin de convaincre mon patron que nous devrions utiliser LINQ to SQL. – Kezzer