J'ai la requête LINQ suivante: Comment puis-je vérifier si la requête a enregistré 1 enregistrement
Comme je ne peux pas faire .Compte pour obtenir le compte. p> p>
4 Réponses :
Vous pouvez utiliser la méthode d'extension de Cependant, il ne vous dit pas si vous avez 0 résultats ou plus de 1. p> p> SIEMODEFAULT CODE> pour exprimer que la requête ne doit jamais renvoyer un résultat.
Si vous souhaitez compter les enregistrements, comptez le résultat de la requête sans em> sombredefault. Vous pouvez toujours exécuter d'abord ou par défaut sur le MNGR pour obtenir le gestionnaire spécifique. p> p>
Vous utilisez un identifiant pour le Si votre problème n'a aucun résultat s'il vous plaît vérifier l'utilisation. de où code> condition, je pense que vous auriez dû déjà garanti que cette requête ne renvoie qu'un seul résultat.
firstordfault () code> de Titre MSDN . p>
Tout d'abord, ce n'est pas une requête valide. Lorsque vous utilisez la syntaxe de la requête ( Pour répondre à votre question, appeler Si vous souhaitez vérifier que la requête ne renvoie qu'un seul résultat, vous devez utiliser La méthode si vous n'aviez pas ' t Je veux jeter une exception, il peut être plus facile de jeter les deux premiers résultats dans une liste et de vérifier que vous en avez un. p> de bla in bla ... code>), vous devez avoir une clause
sélectionner code>. Il devrait être plus semblable à:
sReveRetFault () code> sur votre requête retourne le premier résultat de la requête ou de la valeur par défaut pour le Type (le plus probable
null code> dans ce cas). Pour ce que vous allez, cela ne sera pas une utilisation adéquate car la requête peut contenir plus d'un résultat. P>
SIMOREFAULT () code> à la place. Il retournera l'un ou l'autre article produit par la requête, la valeur par défaut
null code> s'il était vide ou jetez une exception s'il y avait plus d'un élément. P>
La façon dont je l'ai fait était de dire si (mngr! = Null) {.. Nous savons que nous avons eu au bail 1 record}
Il y a aussi un .single () qui vérifie que vous avez exactement b> un enregistrement
-1 pour suggérer que jeter les résultats dans une liste et que le comptage serait une solution adéquate. Ce faisant sur des ensembles de gros résultats ou où une grande table doit être traversée pour saisir toutes les données serait très mauvaise. Les optimisations de premier et single ne peuvent pas être reproduites avec votre suggestion.
Regardez la documentation de la méthode FirstArdefault. Il renvoie la valeur par défaut pour le type de données s'il n'y a aucun résultat. Si c'est un indispensable que pas plus de 1 i> l'enregistrement passe les critères de requête, utilisez à la place SingleFault.