La sélection de compter dans LINQ
J'ai une table SQL Server avec des colonnes ResolvedDate
et ResolvedBy
.
Maintenant, je veux sélectionner les deux colonnes et le décompte de leurs résultats, ce qui, je pensais le mettre en œuvre comme suit:
_dataContext.Activities
.Where(a => a.IsResolved && a.ResolvedBy == userId)
.Select(a => new { a.ResolvedDate, ***COUNT*** });
Comme vous pouvez le voir, le Comte-Partie est manquante.
Je veux profiter de chaque activité, ce qui a été fait dans ce ResolvedDate et compter.
Comment puis-je mettre en œuvre?
si vous souhaitez regrouper les resolveddate puis faire un count
OriginalL'auteur SeToY | 2012-04-06
Vous devez vous connecter pour publier un commentaire.
Sélectionnez uniquement les date partie:
a.ResolvedDate.Date
changement de la troisième ligne de
group a by a.ResolvedDate.Date into g
J'ai oublié de mentionner que je suis en utilisant EntityFramework 4. Ainsi, le Typemember "Date" n'est pas pris en charge dans LINQ to entities
Résolu: le groupe a par EntityFunctions.TruncateTime(un.ResolvedDate)
OriginalL'auteur Ralph Shillington
Si vous essayez de compter chaque élément en date, vous devez utiliser
GroupBy
:OriginalL'auteur Reed Copsey
Vous devez regrouper vos données par ResolvedDate pour obtenir le nombre d'activités résolu tous les jours.
De groupe par jour (sans l'heure, les minutes, etc.) vous pouvez modifier la déclaration du groupe:
OriginalL'auteur MarcinJuraszek
Si vous voulez seulement obtenir le comte, vous pouvez le faire beaucoup plus rapidement en sélectionnant le comte seul:
OMI OP veut même groupe ResolvedDates et de les compter.
est
var count = dataContext.Activities .Count(a => a.IsResolved && a.ResolvedBy == userId);
est égal àselect count(CoulmnName) from [TableName] Where (IsResolved=1) and (ResolvedBy=@UserID)
?OriginalL'auteur SLaks