NLog.LogFactory.GetCandidateFileNames C# (CSharp) Method

GetCandidateFileNames() private static method

private static GetCandidateFileNames ( ) : IEnumerable
return IEnumerable
        private static IEnumerable<string> GetCandidateFileNames()
        {
#if NET_CF
            yield return CompactFrameworkHelper.GetExeFileName() + ".nlog";
            yield return Path.Combine(Path.GetDirectoryName(CompactFrameworkHelper.GetExeFileName()), "NLog.config");
            yield return typeof(LogFactory).Assembly.GetName().CodeBase + ".nlog";
#elif SILVERLIGHT
            yield return "NLog.config";
#else
            // NLog.config from application directory
            yield return Path.Combine(AppDomain.CurrentDomain.BaseDirectory, "NLog.config");

            // current config file with .config renamed to .nlog
            string cf = AppDomain.CurrentDomain.SetupInformation.ConfigurationFile;
            if (cf != null)
            {
                yield return Path.ChangeExtension(cf, ".nlog");
            }

            // get path to NLog.dll.nlog only if the assembly is not in the GAC
            var nlogAssembly = typeof(LogFactory).Assembly;
            if (!nlogAssembly.GlobalAssemblyCache)
            {
                if (!string.IsNullOrEmpty(nlogAssembly.Location))
                {
                    yield return nlogAssembly.Location + ".nlog";
                }
            }
#endif
        }