public void WriteExpandedNodeId(string fieldName, ExpandedNodeId value)
{
if (BeginField(fieldName, value == null, true))
{
PushNamespace(Namespaces.OpcUaXsd);
if (value != null)
{
ushort namespaceIndex = value.NamespaceIndex;
if (m_namespaceMappings != null && m_namespaceMappings.Length > namespaceIndex)
{
namespaceIndex = m_namespaceMappings[namespaceIndex];
}
uint serverIndex = value.ServerIndex;
if (m_serverMappings != null && m_serverMappings.Length > serverIndex)
{
serverIndex = m_serverMappings[serverIndex];
}
StringBuilder buffer = new StringBuilder();
ExpandedNodeId.Format(buffer, value.Identifier, value.IdType, namespaceIndex, value.NamespaceUri, serverIndex);
WriteString("Identifier", buffer.ToString());
}
PopNamespace();
EndField(fieldName);
}
}