我有以下方法

private void RegisterServices(IServiceCollection serviceCollection, Container container, string solutionPrefix)
{
   var types = AppDomain.CurrentDomain.GetAssemblies()
                .Where(a.FullName.StartsWith(solutionPrefix))
                .SelectMany(x => x.GetTypes())
                .Where(x => !x.IsAbstract && !x.IsGenericTypeDefinition);
   //Rest of the code...
}


现在,我想以solutionPrefix参数是字符串数组的方式重构代码,并在第一个Where子句中选择其名称以solutionPrefix数组中的任何项目开头的所有程序集。

最佳答案

您可以使用Any扩展方法的此重载。

.Where(x => solutionPrefix.Any(e => x.FullName.StartsWith(e)))

关于c# - 内部LINQ查询,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/49475234/

10-09 22:21