Domanda

Ho uno scenario da molti a molti classico con tre tabelle (studenti, corsi e terza tabella di assegnazione dei Corsi Studenti).

Sto usando EF nel mio nuovo progetto e EF designer non crea la terza tabella. Devo selezionare tutte le corriere insieme al numero di studenti assegnati. L'uso di SQL semplice è molto semplice:

select c.Id, c.Name, Count(sc.*) as StudentCount 
from Courses c left join StudentCourses sc on(c.Id=sc.CourseId)
group by c.Id, c.Name

Ma non riesco a capire come tradurre questa query in Linq in SQL. Per favore, consigli.

Grazie.

È stato utile?

Soluzione

Il designer EF nasconde la tabella. È ancora lì, ma crea solo l'associazione per te, quindi puoi semplicemente fare riferimento agli studenti dei corsi o viceversa.

Altri suggerimenti

Potresti fare qualcosa del genere:

var list = from c in context.Courses
           from s in c.Students
           select new
           {
             StudentName=s.Name,
             Class=s.Class,
           };

per maggiori informazioni guarda questa pagina

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top