expander, I
{
metadataValue = item.Value.GetMetadataValueEscaped(metadataName);
}
- catch (ArgumentException ex) // Blank metadata name
- {
- ProjectErrorUtilities.ThrowInvalidProject(elementLocation, "CannotEvaluateItemMetadata", metadataName, ex.Message);
- }
- catch (InvalidOperationException ex)
+ catch (Exception ex) when (ex is ArgumentException || ex is InvalidOperationException)
{
+ // Blank metadata name
ProjectErrorUtilities.ThrowInvalidProject(elementLocation, "CannotEvaluateItemMetadata", metadataName, ex.Message);
}
@@ -2788,12 +2785,9 @@ internal static IEnumerable expander
{
metadataValue = item.Value.GetMetadataValueEscaped(metadataName);
}
- catch (ArgumentException ex) // Blank metadata name
- {
- ProjectErrorUtilities.ThrowInvalidProject(elementLocation, "CannotEvaluateItemMetadata", metadataName, ex.Message);
- }
- catch (InvalidOperationException ex)
+ catch (Exception ex) when (ex is ArgumentException || ex is InvalidOperationException)
{
+ // Blank metadata name
ProjectErrorUtilities.ThrowInvalidProject(elementLocation, "CannotEvaluateItemMetadata", metadataName, ex.Message);
}
@@ -2826,16 +2820,46 @@ internal static IEnumerable ex
{
metadataValue = item.Value.GetMetadataValueEscaped(metadataName);
}
- catch (ArgumentException ex) // Blank metadata name
+ catch (Exception ex) when (ex is ArgumentException || ex is InvalidOperationException)
{
+ // Blank metadata name
ProjectErrorUtilities.ThrowInvalidProject(elementLocation, "CannotEvaluateItemMetadata", metadataName, ex.Message);
}
- catch (InvalidOperationException ex)
+
+ if (metadataValue != null && String.Equals(metadataValue, metadataValueToFind, StringComparison.OrdinalIgnoreCase))
+ {
+ // return a result through the enumerator
+ yield return new Pair expander, IElementLocation elementLocation, bool includeNullEntries, string functionName, IEnumerable
{
metadataValue = item.Value.GetMetadataValueEscaped(metadataName);
}
- catch (ArgumentException ex) // Blank metadata name
- {
- ProjectErrorUtilities.ThrowInvalidProject(elementLocation, "CannotEvaluateItemMetadata", metadataName, ex.Message);
- }
- catch (InvalidOperationException ex)
+ catch (Exception ex) when (ex is ArgumentException || ex is InvalidOperationException)
{
+ // Blank metadata name
ProjectErrorUtilities.ThrowInvalidProject(elementLocation, "CannotEvaluateItemMetadata", metadataName, ex.Message);
}