private static void UnmarshallResult(XmlUnmarshallerContext context,GetIdentityDkimAttributesResponse response)
{
int originalDepth = context.CurrentDepth;
int targetDepth = originalDepth + 1;
if (context.IsStartOfDocument)
targetDepth += 2;
while (context.Read())
{
if (context.IsStartElement || context.IsAttribute)
{
if (context.TestExpression("DkimAttributes/entry", targetDepth))
{
KeyValueUnmarshaller<string, IdentityDkimAttributes, StringUnmarshaller, IdentityDkimAttributesUnmarshaller> unmarshaller = new KeyValueUnmarshaller<string, IdentityDkimAttributes, StringUnmarshaller, IdentityDkimAttributesUnmarshaller>(StringUnmarshaller.GetInstance(), IdentityDkimAttributesUnmarshaller.GetInstance());
KeyValuePair<string, IdentityDkimAttributes> kvp = unmarshaller.Unmarshall(context);
response.DkimAttributes.Add(kvp.Key, kvp.Value);
continue;
}
}
else if (context.IsEndElement && context.CurrentDepth < originalDepth)
{
return;
}
}
return;
}