2009-09-11 7 views
1

J'ai un simple ensemble de tables ...Tout sélectionner pas dans l'exigence, LINQ to SQL

Liste
- Id

Articles
- Id

Entrées
- ENTRYID
- ListeId
- PièceId

J'essaye de concevoir une requête Linq qui prendra un ListId donné et retournera tous les Items qui n'ont pas d'Entrée avec cet ListId dessus. Cela semble assez simple, mais ça continue à mal tourner. Des idées?

Répondre

1

Si vous voulez sélectionner tous les articles, vous pouvez faire quelque chose comme ça.

var x = Items.Where(item => !Entries.Any(entry => entry.ItemID == item.ID && entry.ListID == listID)); 
+0

Eh bien, que tout retourne les entrées, pas d'éléments réels. – Ciel

+0

Okay ouais je pensais que vous pourriez vouloir les articles, j'ai ajouté l'exemple pour cela et supprimera le premier exemple. –

+0

ItemID == item.ID && Cette partie, je ne suis pas sûr de ce qui se passe ici. Cela ne fonctionne pas vraiment, et je ne suis pas sûr de ce que "item.ID" est censé remplacer ici. Puis-je vous déranger pour clarifier? – Ciel

0
var itemsToExclude = from dc.Lists in dc select l; 

var x= from Entries in dc select e where !itemsToExclude.Contains(e.ListId)