2009-01-02 7 views
4

J'ai essayé une clause where dans Linq pour obtenir des détails sur User s ceux qui sont Active et AllowLogin est également vrai.LINQ où Clause doute

Alors, comment puis-je comparer les valeurs de la table (les deux sont des valeurs booléennes) avec vrai ou faux?

Répondre

14

Il suffit d'utiliser quelque chose comme:

var query = from user in context.Users 
      where user.Active && user.AllowLogin 
      select user; 

Vous pouvez écrire la même requête sans expression de requête:

var query = context.Users.Where(user => user.Active && user.AllowLogin); 
+0

Si tout ce que vous voulez est les détails (au lieu de l'ensemble Utilisateur), vous pouvez faire un "select user.Detail" –

+0

Oui - mais j'ai supposé que lorsque l'OP a dit "détails", il voulait dire "tous les champs de la table" plutôt qu'un champ spécifique appelé "détails". –

+0

J'ai pris la liberté de formater la question pour qu'elle corresponde à la réponse de Jon. –

0
var qry = (from en in Contaxt.tblStatDefinitions 
        where en.Name == "Sunandan" 
        select en.id).Single();