【问题标题】:Combination of all parameters in linqlinq中所有参数的组合
【发布时间】:2014-12-10 16:35:31
【问题描述】:

我有以下方法,我需要从数据库中获取记录,其中所有/任何一个/任何参数组合等于true

public IQueryable<Entity> GetMethod(bool param1, bool param2, bool param3, bool param4, bool param5, bool param6, bool param7)
{
     //some logic here
}

我想使用嵌套 ifswitch 的替代方法

如果有人可以帮助我。谢谢

【问题讨论】:

  • 您的问题不清楚。请提供示例输入/输出。

标签: c# linq if-statement optimization


【解决方案1】:

你可能正在寻找这个;

public IQueryable<Entity> GetMethod(params bool[] parameters)
{        
     bool anyIsTrue = parameters.Any(p => p); //.Any() will do, but just for clarification
     bool anyIsFalse = pramaters.Any(p => !p);

     bool allAreTrue = parameters.All(p => p);
     bool allAreFalse = parameters.All(p => !p);

     //rest of logic
}

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-03-20
    • 1970-01-01
    • 2019-07-18
    • 1970-01-01
    • 2022-01-18
    • 1970-01-01
    相关资源
    最近更新 更多