Hallo eraser_seb,
eine SQL-'IN'-Anweisung wird in Linq2SQL andersherum mittels der Contains-Methode umgesetzt, d.h. aus "x IN y" wird:
C#-Quelltext
s.a.
wekeroad.com/2008/02...ies-with-linq-to-sql
Und auch die SQL-'LIKE'-Anweisung kannst du mittels folgender Methoden umsetzen:
- LIKE 'X%': value.StartsWith("X")
- LIKE '%X': value.EndsWith("X")
- LIKE '%X%': value.Contains("X")
Und dann noch mittels der Unterabfrage kombiniert, solle in etwa so aussehen (ungetestet):
C#-Quelltext
1: 2: 3: 4: 5: 6: 7: 8: 9:
| from fDatei in tblDateien where fDatei.ArchivDSN == varArchiFDSN && (from word in DateienSchlagworte where word.Contains("Text") select word).Contains(fDatei.DSN) select new { } |
P.S. In der 'from'-Klausel sollte der Variablenname in Singular (Einzahl) benutzt werden, also 'fDatei' (anstatt 'fDateien') - da dies analog zu einer 'foreach ... in'-Schleife zu sehen ist.