2012-06-19 5 views
1

J'ai une table d'item où il y a une colonne de type. Les valeurs ici peuvent être 1, 2, 3 ou 0. Les utilisateurs ont une valeur prédéfinie, mais 0 agit comme un global - tous les utilisateurs obtiennent ces éléments retournés.Comment structurer une requête LINQ?

La principale mise en garde est qu'un élément peut être un 3, mais aussi un enregistrement 0, ce qui signifie que les 3 obtiennent un enregistrement, les 1 et 2 obtiennent l'enregistrement 0.

Ma question est comment puis-je écrire la requête de sorte que les 3 n'obtiennent pas aussi l'enregistrement 0?

+0

montrer la structure de la table et les gens peuvent donner des suggestions. Il est difficile de deviner une requête linq sans savoir ce que nous allons interroger. – Brian

+0

Frédéric l'obtient. Je ne cherche pas de code, je cherchais une approche. Je n'en ai pas vraiment eu. Parfois, vous voulez juste jeter quelque chose à la pensée de groupe et voir ce qui tombe. Je m'excuse si je n'ai pas précisé cela. J'ai essayé de le réduire pour le rendre plus facile à transmettre. SO et moi avons l'habitude de ne pas être sur la même longueur d'onde. – abend

Répondre

2

Pour garder votre requête simple, vous pouvez chercher les deux dossiers, les commander par type, descendant, puis prendre seul le premier:

  • S'il n'y a qu'un type 3 enregistrement, il sera renvoyé,
  • S'il y a seulement un enregistrement de type 0, il sera retourné,
  • S'il existe des enregistrements de type 3 et de type 0, l'enregistrement de type 3 sera renvoyé car il apparaîtra en premier dans le jeu de résultats.
Questions connexes