Ich versuche, eine einzige Abfrage zu schreiben, die eine der beiden Bedingungen auf der Grundlage einer Eingabevariablen enthält:
!(from o in db.Products.Where(x => x.Company_ID == cid && x.IsDeleted != true)
o
(from o in db.Products.Where(x => x.Company_ID == cid && x.IsDeleted != true)
Meine derzeitige Methode, die die erste Bedingung abdeckt, sieht folgendermaßen aus. Ich habe productExists, die der Parameter, der bestimmt, ob ich will, Bedingung #1 oder #2 von oben sein wird enthalten.
public IQueryable<ProductImportViewModel> AllImports(int id, bool productExists)
{
return (from t1 in db.Products_Staging
where (t1.ImportFileId == id) && !(from o in db.Products.Where(x => x.Company_ID == cid && x.IsDeleted != true)
select o.ProductName).Contains(t1.ProductName)
select new ProductImportViewModel
{
Id = t1.Id
}
}
Wenn mir jemand dabei helfen könnte, wäre ich sehr dankbar.