/// <summary> /// Импортировать данные /// </summary> /// <param name="path"></param> /// <returns></returns> public static string ImportData(string path) { try { Apps.Clear(); if (File.Exists(path)) { XDocument xdoc = XDocument.Load(path); var counter = 0; foreach (XElement app in xdoc.Element("Applications").Elements("App")) { XElement name = app.Element("Name"); XElement workFolder = app.Element("WorkFolderPath"); XElement releaseFolder = app.Element("ReleaseFolderPath"); XElement reestrFolder = app.Element("ReestrFolderPath"); ControlledApp tApp = ControlledApp.AddApp( name.Value.ToString(), workFolder.Value == null ? "" : workFolder.Value.ToString(), releaseFolder == null ? "" : releaseFolder.Value.ToString(), reestrFolder == null ? "" : reestrFolder.Value.ToString(), counter ); counter++; Apps.Add(tApp); } } return("OK"); } catch (Exception ex) { return(ex.Message); } }
/// <summary> /// Получить данные из базы данных /// </summary> /// <returns></returns> static string GetDataFromDb() { try { Apps.Clear(); switch (ConnectionType) { case ConnectionTypes.OleDb: OleDbConnection oleDbConnection = new OleDbConnection(); oleDbConnection.ConnectionString = string.Format("Provider={0}; Data Source={1};User ID={2};Password={3};Connection Timeout=3; ", Provider, Server, User, Password); oleDbConnection.Open(); OleDbCommand oleDbCommand = oleDbConnection.CreateCommand(); oleDbCommand.CommandText = string.Format("SELECT Name, WorkFolder, ReleaseFolder, ReestrFolder, ID From {0}", Table); OleDbDataReader oleDbDataReader = oleDbCommand.ExecuteReader(); while (oleDbDataReader.Read()) { Apps.Add(ControlledApp.AddApp(oleDbDataReader["Name"].ToString(), oleDbDataReader["WorkFolder"].ToString(), oleDbDataReader["ReleaseFolder"].ToString(), oleDbDataReader["ReestrFolder"].ToString(), Convert.ToInt32(oleDbDataReader["ID"].ToString()))); } oleDbConnection.Close(); break; case ConnectionTypes.OracleMySql: MySqlConnection mySqlConnection = new MySqlConnection(); mySqlConnection.ConnectionString = string.Format("host={0};port={1};User Id={2};database={3};password={4};character set=utf8", Server, Port, User, Database, Password); mySqlConnection.Open(); MySqlCommand mySqlCommand = mySqlConnection.CreateCommand(); mySqlCommand.CommandText = string.Format("SELECT Name, WorkFolder, ReleaseFolder, ReestrFolder, ID From {0}", Table); MySqlDataReader mySqlDataReader = mySqlCommand.ExecuteReader(); while (mySqlDataReader.Read()) { Apps.Add(ControlledApp.AddApp(mySqlDataReader["Name"].ToString(), mySqlDataReader["WorkFolder"].ToString().Replace('+', Path.DirectorySeparatorChar), mySqlDataReader["ReleaseFolder"].ToString().Replace('+', Path.DirectorySeparatorChar), mySqlDataReader["ReestrFolder"].ToString().Replace('+', Path.DirectorySeparatorChar), Convert.ToInt32(mySqlDataReader["ID"].ToString()))); } mySqlConnection.Close(); break; case ConnectionTypes.Sql: SqlConnection sqlConnection = new SqlConnection(); if (Password != "") { sqlConnection.ConnectionString = string.Format("Data Source={0};User ={1};Initial Catalog={2};Password={3}; Integrated Security = false;", Server, User, Database, Password); } else { sqlConnection.ConnectionString = string.Format("Data Source={0};Initial Catalog={1}; Integrated Security = True;", Server, Database); } sqlConnection.Open(); SqlCommand sqlCommand = sqlConnection.CreateCommand(); sqlCommand.CommandText = string.Format("SELECT Name, WorkFolder, ReleaseFolder, ReestrFolder, ID From {0}", Table); SqlDataReader sqlDataReader = sqlCommand.ExecuteReader(); while (sqlDataReader.Read()) { Apps.Add(ControlledApp.AddApp(sqlDataReader["Name"].ToString(), sqlDataReader["WorkFolder"].ToString(), sqlDataReader["ReleaseFolder"].ToString(), sqlDataReader["ReestrFolder"].ToString(), Convert.ToInt32(sqlDataReader["ID"].ToString()))); } sqlConnection.Close(); break; } foreach (var app in Apps) { app.ExistInDb = true; } return("OK"); } catch (Exception ex) { return(ex.Message); } }