示例#1
0
        /// <summary>
        ///		Carga los datos de un archivo
        /// </summary>
        public Project Load(string strFileName)
        {
            Project objProject = new Project();

                // Carga los datos
                    if (System.IO.File.Exists(strFileName))
                        { MLFile objMLFile = new MLSerializer().Parse(MLSerializer.SerializerType.XML, strFileName);

                                foreach (MLNode objMLNode in objMLFile.Nodes)
                                    if (objMLNode.Name == cnstStrTagRoot)
                                        foreach (MLNode objMLChild in objMLNode.Nodes)
                                            switch (objMLChild.Name)
                                                { case cnstStrTagContext:
                                                            objProject.Context = LoadContext(objMLChild);
                                                        break;
                                                    case cnstStrTagMessage:
                                                            objProject.Instructions.Add(LoadInstruction(objMLChild));
                                                        break;
                                                    case cnstStrTagAuthPlain:
                                                            objProject.Authenticator = LoadAuthenticationPlain(objMLChild);
                                                        break;
                                                    case cnstStrTagAuthOAuth:
                                                            objProject.Authenticator = LoadAuthenticationOAuth(objMLChild);
                                                        break;
                                                }
                        }
                // Devuelve el proyecto
                    return objProject;
        }
        /// <summary>
        ///		Carga las cuentas de un archivo
        /// </summary>
        public static void Load(string strFileName, ManagerTwitter objManager)
        {
            TwitterAccountsCollection objColAccounts = new TwitterAccountsCollection();

                if (System.IO.File.Exists(strFileName))
                    {	MLFile objMLFile = new MLSerializer().Parse(MLSerializer.SerializerType.XML, strFileName);

                            // Recorre los nodos
                                foreach (MLNode objMLNode in objMLFile.Nodes)
                                    if (objMLNode.Name == cnstStrTagRoot)
                                        foreach (MLNode objMLAccount in objMLNode.Nodes)
                                            if (objMLAccount.Name == cnstStrTagAccount)
                                                { TwitterAccount objAccount = new TwitterAccount(objManager);

                                                        // Asigna los datos
                                                            objAccount.ID = objMLAccount.Nodes[cnstStrTagID].Value;
                                                            objAccount.ScreenName = objMLAccount.Nodes[cnstStrTagUser].Value;
                                                            objAccount.OAuthToken = objMLAccount.Nodes[cnstStrTagOAuthToken].Value;
                                                            objAccount.OAuthTokenSecret = objMLAccount.Nodes[cnstStrTagOAuthTokenSecret].Value;
                                                        // Añade la cuenta a la colección
                                                            objManager.Accounts.Add(objAccount);
                                                }
                    }
        }