Mam pewną tabelę i następujący warunek zapytania: jeśli parametr A ma wartość null, weź wszystko, jeśli nie, użyj go w zapytaniu. Wiem, jak to zrobić w 2 krokach:Linq: jak wykluczyć warunek, jeśli parametr ma wartość null
List<O> list = null;
if (A = null)
{
list = context.Obj.Select(o => o).ToList();
}
else
{
list = context.Obj.Where(o.A == A).ToList();
}
Czy można mieć to samo co jedno zapytanie? Dzięki
myślę, że nie potrzebują 'select()' tam. – svick
Mam nadzieję, że masz na myśli 'A == null'! (C# powinno to powstrzymać przed kompilacją, ale zawsze najlepiej jest upewnić się, że napisany kod jest w odpowiedniej kompilacji. Ważne jest, aby być krytycznym wobec opublikowanego kodu, ponieważ * skompilowałoby to [ale nie działało zgodnie z oczekiwaniami] w niektórych językach.) –