public static ConstructorInfo GetConstructor(this TypeInfo typeInfo, Type[] types, BindingFlags bindingFlags) { Argument.IsNotNull("typeInfo", typeInfo); return (from x in GetConstructors(typeInfo, bindingFlags) where CollectionHelper.IsEqualTo(types, from parameterInfo in x.GetParameters() select parameterInfo.ParameterType) select x).FirstOrDefault(); }