コード例 #1
0
        public static void UpdateRecentServerList(string databaseName, string userName, string password, AuthenticationType authType)
        {
            try
            {
                userName = Cryptography.EncryptText(userName, ConnectionHelper.ConnectCryptoKey);
                password = Cryptography.EncryptText(password, ConnectionHelper.ConnectCryptoKey);
                string configFileFullPath  = Path.Combine(SqlBuildManager.Logging.Configure.AppDataPath, ConfigFileName);
                ServerConnectConfig config = new ServerConnectConfig();
                if (File.Exists(configFileFullPath))
                {
                    config.ReadXml(configFileFullPath);
                }

                DataRow[] row = config.ServerConfiguration.Select(config.ServerConfiguration.NameColumn.ColumnName + " ='" + databaseName + "'");
                if (row.Length == 0)
                {
                    config.ServerConfiguration.AddServerConfigurationRow(databaseName, DateTime.Now, userName, password, authType.ToString());
                }
                else
                {
                    var r = (ServerConnectConfig.ServerConfigurationRow)row[0];
                    r.LastAccessed       = DateTime.UtcNow;
                    r.UserName           = userName;
                    r.Password           = password;
                    r.AuthenticationType = authType.ToString();
                    r.AcceptChanges();
                }
                config.WriteXml(configFileFullPath);
            }
            catch (Exception exe)
            {
                log.LogError(exe, "Error updating Recent Server List");
            }
        }
コード例 #2
0
        public static List <string> GetRecentServers(out ServerConnectConfig.ServerConfigurationDataTable serverConfigTbl)
        {
            serverConfigTbl = null;
            string        homePath  = SqlBuildManager.Logging.Configure.AppDataPath;
            List <string> recentDbs = new List <string>();

            if (System.IO.File.Exists(Path.Combine(homePath, ConfigFileName)))
            {
                try
                {
                    ServerConnectConfig config = new ServerConnectConfig();
                    config.ReadXml(Path.Combine(homePath, ConfigFileName));
                    serverConfigTbl = config.ServerConfiguration;
                    DataView view = config.ServerConfiguration.DefaultView;
                    view.Sort = config.ServerConfiguration.LastAccessedColumn.ColumnName + " DESC";
                    for (int i = 0; i < view.Count; i++)
                    {
                        recentDbs.Add(((ServerConnectConfig.ServerConfigurationRow)view[i].Row).Name);
                    }
                }
                catch
                {
                }
            }
            return(recentDbs);
        }