/// <inheritdoc />
/// <exception cref="ArgumentException">
/// The <paramref name="attributeName" /> parameter is <c>null</c>, empty or only
/// contains white-space.
/// </exception>
public IEnumerable <T> AllByAttribute(string attributeName, string attributeValue, bool ignoreCase)
{
if (string.IsNullOrWhiteSpace(attributeName))
{
throw new ArgumentException(Resources.Guard_NoValueProvided, "attributeName");
}
var tagSelector = BuildElementQuery();
var attributeQuery = QueryFactory.BuildAttributeQuery(attributeName, attributeValue, ignoreCase);
return(Execute(tagSelector + attributeQuery));
}