2009-11-18 3 views
0
Dim Cozinhas as string = "1, 2, 3" 
Dim FiltroCozinha() As String = Cozinhas.Split(",") 

Dim Empresas = (From E In lstEmpresas _ 
       Group Join CE In lstCozinhasEmpresas On CE.EmpresaID Equals E.EmpresaID Into CEJ = Group From CE In CEJ.DefaultIfEmpty() _ 
       Group Join FC In lstFiltroCozinha On FC Equals CE.CozinhaID Into FCJ = Group From FC In FCJ.DefaultIfEmpty() _ 
       Select New With {E.Nome} _ 
       ).Distinct.ToList 

throws Exception "référence d'objet non définie à une instance d'un objet." ... mais si je retireLinq avec tableau

   Group Join FC In lstFiltroCozinha On FC Equals CE.CozinhaID Into FCJ = Group From FC In FCJ.DefaultIfEmpty() _ 

Il fonctionne. Comment faire une jointure gauche avec le tableau "FiltroCozinha"?

+0

http://www.developer.com/db/article.php/3739391/Implementing-a-Left- Join-with-LINQ.htm – queen3

Répondre

1

Je pense que vous déclarez et utilisant la même variable dans la même ligne

Dim Empresas = (From E In Empresas _

+0

Désolé, j'ai simplifié le code ... considérons un autre nom à l'objet. ... Dim Empresas = (De E En Nouvelle BO.Empresa(). Sélectionnez() _ ... Le problème continue! – Fernando

+0

Alors êtes-vous sûr que '' lstEmpresas' n'est pas Nothing'? –