private int Position(String name)
{
InternalST.Soap( this, objectInfoId," Position ",lastPosition," ",name);
if (cache.memberNames[lastPosition].Equals(name))
{
return lastPosition;
}
else if ((++lastPosition < cache.memberNames.Length) && (cache.memberNames[lastPosition].Equals(name)))
{
return lastPosition;
}
else
{
// Search for name
InternalST.Soap( this, objectInfoId," Position miss search for name "+name);
for (int i=0; i<cache.memberNames.Length; i++)
{
if (cache.memberNames[i].Equals(name))
{
lastPosition = i;
return lastPosition;
}
}
throw new SerializationException(String.Format(CultureInfo.CurrentCulture, SoapUtil.GetResourceString("Serialization_Position"),objectType+" "+name));
}
}