private static void TryFindIgnoreConfigSetting(CommandLineOptions options) {
var directories = new[] { new DirectoryInfo(options.WeaveDir), new DirectoryInfo(Path.Combine(options.WeaveDir,
options.WeaveDir.LastIndexOf("bin", StringComparison.InvariantCultureIgnoreCase) >= options.WeaveDir.Length - 4 ? "../" : "../../")), };
foreach (var directoryInfo in directories) {
foreach (var fileInfo in directoryInfo.GetFiles().Where(fileInfo => fileInfo.Name.EndsWith(".config"))) {
try {
var configMap = new ExeConfigurationFileMap();
configMap.ExeConfigFilename = fileInfo.FullName;
var config = ConfigurationManager.OpenMappedExeConfiguration(configMap, ConfigurationUserLevel.None);
if (config.AppSettings.Settings.AllKeys.Contains("dashing:ignorepeverify")) {
if (config.AppSettings.Settings["dashing:ignorepeverify"].Value.Equals("true", StringComparison.InvariantCultureIgnoreCase)) {
options.IgnorePeVerify = true;
}
}
}
catch {
// do nothing ... probably not the type of config file we're expecting
}
}
}
}