LINQ - wenn Bedingung

In code, der kommentierte Teil ist, was ich lösen muss... gibt es eine Möglichkeit zu schreiben, wie Abfragen in LINQ? Ich brauche das, weil ich brauche die Sortierung basierend auf dem Status.

var result = (
     from contact in db.Contacts
     join user in db.Users on contact.CreatedByUserID equals user.UserID
     join deal in db.Deals on contact.ContactID equals deal.ContactID into deals
     orderby contact.ContactID descending
     select new ContactListView
     {
         ContactID = contact.ContactID,
         FirstName = contact.FirstName,
         LastName = contact.LastName,
         Email = contact.Email,
         Deals = deals.Count(),
         EstValue = deals.Sum(e => e.EstValue),
         SalesAgent = user.FirstName + " " + user.LastName,
         Tasks = 7,
         //This is critical part
         if(Deals == 0) Status = "Prospect";
         else
             Status = "Client";
         //End of critical part...
     })
     .OrderBy(filterQuery.OrderBy + " " + filterQuery.OrderType)
     .Where(filterQuery.Status);

InformationsquelleAutor ilija veselica | 2010-06-16

Schreibe einen Kommentar