2011-01-06 1 views
3

Ich habe eine Tabelle mit dem Namen Text (was in einem Namen) und eine Tabelle namens TextTranslationsLinq: select Elemente in der N-Seite einer 1: N Beziehung

Text können mehrere texttranslations haben (texttranslation hat einen FK textid to text.textid) Es hat auch eine Eigenschaft namens "Übersetzung".

Jetzt habe ich eine Liste von Text-Objekten, die alle 1 oder mehr Textübersetzung unter Objekte haben.

und ich möchte alle Textobjekte, die ein Kind haben (Textübersetzung) mit der Eigenschaft "Translation" gleich zu etwas.

so in Pseudo-Code wäre es:

list.Where (1 oder mehr enthält z.childs.texttranslation 'bla')

das möglich ist?

Antwort

3
from text in context.Text 
    where text.TextTranslations.Any(tt => tt.Translation.Contains("bla")) 
select text; 

Oder

context.Text 
    .Where(
     text => text.TextTranslations.Any(tt => tt.Translation.Contains("bla") 
    ); 

Oder

(from textTranslation in context.TextTranslations 
    where textTranslation.Translation.Contains("bla") 
select textTranslation.Text) 
.Distinct(); 

Oder

context.TextTranslations 
    .Where(textTranslation => textTranslation.Translation.Contains("bla")) 
    .Select(textTranslation => textTranslation.Text) 
    .Distinct(); 
+0

Danke, hat funktioniert! Hatte das nicht schon mal benutzt – Michel

Verwandte Themen