Comment je Peux utiliser une Requête Linq de compter les pas. d'enregistrement de la requête
var emailToProcess =
from a in db.EmailNotToProcess
join b in EmailUids on a.ENTPUId equals b.Uid
where a.ENTPUId != b.Uid
select b;
Ici EmailUids une Liste et EmailUid est une structure à l'intérieur de la structure, nous avons deux options comme
public int EmailId;
public string Uid;
ce ..
donc, je suis à l'exécution de la requête, mais je ne suis pas en mesure de compter combien l'enregistrement de cette requête...
merci....
Vous devez vous connecter pour publier un commentaire.
Vous pouvez utiliser le Count() méthode:
AsEnumerable()
ouToList()
. De réponses mis à jour en conséquence.AsEnumerable()
surEmailsNotToProcess
, en fonction de son type.EmailUids
n'est pas récupérée à partir de la base de données. LINQ to SQL ne peut pas rejoindre une table à un tableau ou une liste. Vous aurez probablement à réécrire votre requête.EmailUids
. Peut-être que vous pouvez utiliserContains()
à la place?Vous tentez de rejoindre une Table SQL via Linq-SQL avec un externe
List
, que je ne pense pas que les est prise en chargeSi il ya seulement une poignée de ID dans la Liste, vous pouvez l'utiliser Contient. Cela va passer chaque entier à SQL en tant que paramètre:
REMARQUE:
Si il y a plus de 1000 Id dans EmailUids, alors vous aurez à repenser votre stratégie. Déplacer la liste des ID dans une table SQL (donc LinqToSQL peut effectuer la conversion de LINQ to SQL brut) ou vous aurez à retirer la totalité de l'ensemble de lignes pour EmailNotToProcess et puis effectuer la jointure sur le client.
Il est difficile de conseiller sans connaître la quantité de données que vous avez à traiter avec dans chaque tableau/liste.
Peut-être avec un Contient: