LINQ中包含一个Except的用法

本文关键字:用法 Except 包含一 LINQ | 更新日期: 2023-09-27 18:15:33

我正在尝试获取不包含"license"的菜单列表。

var menus= MenuRepo.GetAll().Where(x => x.Name.Contains("license") == false)

但现在我想排除其中一个,即。, "licenseUser"

我需要"licenseUser"在列表中

我怎样才能做到这一点?

LINQ中包含一个Except的用法

var menus = MenuRepo.GetAll().Where
        (
          x => !x.Name.Contains("license") || x.Name == "licenseUser"
        );

(注意,当a为布尔值时,a == false!a相同,写起来更短)

只需添加OR条件,检查菜单名称是否等于"licenseUser":

var menus = MenuRepo.GetAll().Where(menu => !menu.Name.Contains("license") || menu.Name == "licenseUser");