private XmlAttributeNode GetAttributeNode(XmlDictionaryString localName, XmlDictionaryString namespaceUri)
{
if (localName == null)
throw System.Runtime.Serialization.DiagnosticUtility.ExceptionUtility.ThrowHelperError(new ArgumentNullException(nameof(localName)));
if (namespaceUri == null)
namespaceUri = XmlDictionaryString.Empty;
if (!_node.CanGetAttribute)
return null;
XmlAttributeNode[] attributeNodes = _attributeNodes;
int attributeCount = _attributeCount;
int attributeIndex = _attributeStart;
for (int i = 0; i < attributeCount; i++)
{
if (++attributeIndex >= attributeCount)
{
attributeIndex = 0;
}
XmlAttributeNode attributeNode = attributeNodes[attributeIndex];
if (attributeNode.IsLocalNameAndNamespaceUri(localName, namespaceUri))
{
_attributeStart = attributeIndex;
return attributeNode;
}
}
return null;
}