我有一个方法如下
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数组。
答案 0 :(得分:5)
您可以使用Any
扩展方法的此重载。
.Where(x => solutionPrefix.Any(e => x.FullName.StartsWith(e)))