使用包含LINQ中的一个除外

时间:2016-10-28 10:17:42

标签: c# entity-framework linq

我正在尝试获取不包含“许可证”的菜单列表。

productFlavors {
        India {

        }
        USA {

        }
    }

但现在我要排除其中一个,即“licenseUser”

我需要列表中的“licenseUser”。

我怎样才能实现这个目标?

2 个答案:

答案 0 :(得分:1)

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

(请注意a == false布尔值时a!a相同,写入时间更短

答案 1 :(得分:0)

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

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