2010-06-17 6 views

Répondre

6
dbContext.Users.Any(x => x.ID == inputID) 
+0

+1. Cela entraîne la requête de base de données la plus efficace. – Steven

+0

Merci cela fonctionne magnifiquement! :) –

1
var user = dbContext.GetTable<User>().SingleOrDefault(u => u.ID == inputID); 
bool userExists = user != null; 

Cela va chercher l'utilisateur correspondant de la base de données, si vous voulez simplement vérifier l'existence du fichier que vous pouvez faire ceci:

int matchingUsers = dbContext.GetTable<User>().Count(u => u.ID == inputID); 
bool userExists = matchingUsers > 0; 

ou

bool userExists = dbContext.GetTable<User>().Any(u => u.ID == inputID); 
+0

Je n'ai jamais vu la méthode 'GetTable <>' avant. Quelle est la différence entre 'dbContext.GetTable ()' et 'dbContext.Users'? Merci. –

+0

@Deniz Dogan - GetTable est défini sur la classe DataContext, si vous utilisez le concepteur linq2sql pour créer des classes d'entités, il crée une sous-classe de DataContext et définit une propriété pour chaque type db-mappé. Donc, dans ce cas, il ressemblera à «IQueryable Users {get {return this.GetTable (); }} ' – Lee

+0

Ah, je vois. Donc, les deux façons sont fondamentalement identiques. Cool. :) –

Questions connexes