public void ParseFromEnvironment() { if (_envVariable.IsEmptyString()) { return; } var varValue = Environment.GetEnvironmentVariable(_envVariable); if (varValue == null) { return; } Origin = OptionOrigin.Environment; OriginName = OptionOrigin.Environment.ToString(); OriginOptionName = _envVariable; try { Value = OptionContainerHelpers.ConvertFromString <T>(varValue); _isSet = true; } catch (Exception exc) { throw new OptionException( string.Format("Could not convert environment variable {0} (value: '{1}') to type {2}.", _envVariable, varValue, typeof(T).Name), _envVariable, exc); } }
public void ParseFromEnvironment() { if (_envVariable.IsEmptyString()) { return; } var varValue = Environment.GetEnvironmentVariable(_envVariable); if (varValue == null) { return; } Origin = OptionOrigin.Environment; OriginName = OptionOrigin.Environment.ToString(); OriginOptionName = _envVariable; var parts = varValue.Split(new[] { _separator }, StringSplitOptions.None); var values = new List <T>(); foreach (var part in parts) { try { var value = OptionContainerHelpers.ConvertFromString <T>(part); values.Add(value); } catch (Exception exc) { throw new OptionException( string.Format("Could not convert part of environment variable {0} (part: '{1}', value: '{2}') to type {3}.", _envVariable, part, varValue, typeof(T).Name), _envVariable, exc); } } Value = values.ToArray(); }