static void GetData(NodeReference node) { Object value = node.GetObject(); if (value is string) { if ((node.GetSubscriptCount() == 1) || (node.GetSubscriptCount() == 2)) { Console.WriteLine(value.ToString()); } else if (node.GetSubscriptCount() == 5) { ValueList outList = node.GetList(); outList.ResetToFirst(); for (int i = 0; i < outList.Length - 1; i++) { Console.Write(outList.GetNextObject() + ", "); } Console.WriteLine(outList.GetNextObject()); outList.Close(); } else if (node.GetSubscriptCount() == 4) { string tempString = Encoding.GetEncoding(1251).GetString(node.GetBytes()); Console.WriteLine(tempString); } } else if (value is double) { Console.WriteLine(value.ToString()); } else if (value is int) { Console.WriteLine(value.ToString()); } }