コード例 #1
0
        /// <summary>
        /// 初始化文件的保存目录
        /// </summary>
        /// <param name="dirName">配置文件中的目录名(不包含路径)</param>
        /// <returns>返回完整的日志根目录</returns>
        public static string InitDirectory(string dirName)
        {
            // 支持绝对路径,和相对路径
            string rootDirectory = Path.Combine(AppDomain.CurrentDomain.BaseDirectory, dirName);


            // 检查日志根目录是否存在
            if (Directory.Exists(rootDirectory) == false)
            {
                Directory.CreateDirectory(rootDirectory);
            }


            if (rootDirectory.EndsWith("\\") == false)
            {
                rootDirectory = rootDirectory + "\\";
            }


            // 检查需要记录的各个数据类型的子目录是否存在。
            foreach (var item in LogConfig.GetCurrent().Types)
            {
                string path = rootDirectory + item.Type.Name;
                if (Directory.Exists(path) == false)
                {
                    Directory.CreateDirectory(path);
                }
            }

            // 返回完整的日志根目录
            return(rootDirectory);
        }
コード例 #2
0
        public void Init(WriterSection config)
        {
            string value = config.GetOptionValue("RootDirectory");

            if (string.IsNullOrEmpty(value))
            {
                throw new LogConfigException("日志配置文件中,没有为FileWriter指定RootDirectory属性。");
            }


            if (s_rootDirectory != null)
            {
                return;
            }


            // 支持绝对路径,和相对路径
            string rootDirectory = Path.Combine(AppDomain.CurrentDomain.BaseDirectory, value);


            // 检查日志根目录是否存在
            if (Directory.Exists(rootDirectory) == false)
            {
                Directory.CreateDirectory(rootDirectory);
            }


            if (rootDirectory.EndsWith("\\") == false)
            {
                rootDirectory = rootDirectory + "\\";
            }


            // 检查需要记录的各个数据类型的子目录是否存在。
            foreach (var item in LogConfig.GetCurrent().Types)
            {
                string path = rootDirectory + item.Type.Name;
                if (Directory.Exists(path) == false)
                {
                    Directory.CreateDirectory(path);
                }
            }

            s_rootDirectory = rootDirectory;
        }