public void WriteExpandedNodeId(string fieldName, ExpandedNodeId value)
{
if (NodeId.IsNull(value))
{
WriteSimpleField(fieldName, null, false);
return;
}
PushStructure(fieldName);
if (UseReversibleEncoding)
{
WriteSimpleField("Id", new NodeId(value.Identifier, value.NamespaceIndex).ToString(), true);
if (!String.IsNullOrEmpty(value.NamespaceUri))
{
WriteSimpleField("Uri", value.NamespaceUri, true);
}
if (value.ServerIndex > 0)
{
WriteSimpleField("ServerIndex", value.ServerIndex.ToString(), false);
}
}
else
{
WriteSimpleField("Id", new NodeId(value.Identifier, 0).ToString(), true);
WriteNamespaceIndex(value.NamespaceIndex);
WriteServerIndex(value.ServerIndex);
}
PopStructure();
}