public static void UpdateStatus(string message) { StringReader xmlreader = new StringReader(message); //xmlreader.Read(); // skip BOM ??? XmlDocument xml_doc = new XmlDocument(); //Debug.Log("UserBehavior UpdateStatus xml is " + message); xml_doc.Load(xmlreader); XmlNodeList user_nodes = xml_doc.SelectNodes("//user_status/user"); foreach (XmlNode user in user_nodes) { string user_name = user["name"].InnerText; //Debug.Log("the name is " + user_name); if (!user_dict.ContainsKey(user_name)) { //Debug.Log("UserBehavior name not in dictionary " + user_name); continue; } UserBehavior user_script = user_dict[user_name]; user_script.UpdateUserStatus(user); } }