webForumDet fria alternativet

Konstig select med NHibernate Linq

.NET

0 svar · 416 visningar · startad av doggelito

Medlem sedan juni 20003 076 inlägg
Frågan#1

Hej, jag får en mindre vacker och även felaktig selectsats som behöver ändras.
Resultatet ser ut så här:

select ...
from   Cases case0_
       left outer join Customers customer1_
         on case0_.CustomerId = customer1_.CustomerId,
       Customers customer2_
where  case0_.CustomerId = customer2_.CustomerId
...

Jag får alltså en join av Customers två ggr. Den enda jag vill ha är left joinen.

Och koden:

IQueryable<Case> cases = _caseService.GetCases()
     .Where(x => x.Status == filter.Status
      && (
           x.Title.Contains(filter.Search)
           || (x.Customer != null && (x.Customer.FirstName.Contains(filter.Search) || x.Customer.LastName.Contains(filter.Search)))
           || (x.Customer == null && (x.FirstName.Contains(filter.Search) || x.LastName.Contains(filter.Search)))
       )
).Fetch(y => y.Customer);
255 ms totalt · 4 externa anrop · v20260731065814-full.a51de22e
125 ms — deklarationer (db)
0 ms — hämta statistik (cache)
127 ms — hämta tråd, inlägg och bilagor (db)
121 ms — ändringar (db)