我有以下方法:
public static List<string> GetArgsListStartsWith(string filter, bool invertSelection, bool lowercaseArgs)
{
return GetArgumentsList(lowercaseArgs)
.Where(x => !invertSelection && x.StartsWith(filter)).ToList();
}
然后我这样称呼它GetArgsListStartsWith("/", true, false)
这将转化为:获取所有不以“/”开头的参数的列表。问题是列表没有被填充,即使所有参数都不以“/”开头。
如果我调用GetArgsListStartsWith("/", false, false)
which 转换为:获取以“/”开头的所有参数的列表,该列表确实会填充以“/”开头的参数。
我怀疑设置为true并返回false时!invertSelection && x.StartsWith(filter)
不会返回,但我不明白为什么。有人看到我看不到的东西吗?true
invertSelection
x.StartsWith(filter)