/// <summary> /// Generates MySql configuiration from TempDbMySqlServerSettings /// </summary> /// <param name="tempDbMySqlSettings"></param> /// <returns></returns> /// <exception cref="ArgumentNullException"></exception> public string GenerateFor(TempDbMySqlServerSettings tempDbMySqlSettings) { if (tempDbMySqlSettings == null) { throw new ArgumentNullException(nameof(tempDbMySqlSettings)); } var iniFile = new INIFile.INIFile(); iniFile.AddSection(SECTION); tempDbMySqlSettings .GetType() .GetProperties() .ForEach(prop => AddSetting(iniFile, prop, tempDbMySqlSettings)); return(iniFile.ToString()); }
/// <summary> /// Generates MySql configuration from TempDbMySqlServerSettings /// </summary> /// <param name="tempDbMySqlSettings"></param> /// <returns></returns> /// <exception cref="ArgumentNullException"></exception> public string GenerateFor(TempDbMySqlServerSettings tempDbMySqlSettings) { if (tempDbMySqlSettings == null) { throw new ArgumentNullException(nameof(tempDbMySqlSettings)); } var iniFile = new INIFile.INIFile(); iniFile.AddSection(SECTION); tempDbMySqlSettings.GetType() .GetProperties() .Select(prop => GetSetting(prop, tempDbMySqlSettings)) .Where(y => y.Key?.Length > 0) .ForEach(x => WriteSetting(iniFile, x)); tempDbMySqlSettings .CustomConfiguration ?.Select(x => new KeyValuePair <string, string>(x.Key, x.Value)) .ForEach(x => WriteSetting(iniFile, x)); return(iniFile.ToString()); }