private void SearchTraceLog(string path, TraceLogParameter param)
        {
            var files = GetLogFiles(path, param.BeginDate, param.EndDate);

            var result = new List<object>();

            foreach(var file in files)
            {
                try
                {
                    if (File.Exists(file) == false) continue;

                    DateTime date = DateTime.MinValue;
                    string message = string.Empty;

                    var lines = File.ReadAllLines(file);
                    var fileSearchResult = from item in lines
                                           where ParseTraceLogInfo(item, out date, out message) == true
                                           where IsInDateTime(date, param.BeginDate, param.EndDate)
                                           select new
                                           {
                                               Date = date,
                                               Message = message
                                           };

                    result.AddRange(fileSearchResult);
                }
                catch (Exception e)
                {
                    Trace.WriteLine(e.ToString());
                    continue;
                }
            }

            FindResult = null;

            Result =
                new
                {
                    LogList = result
                };
        }
        private bool ParsingAlarmSearchParameters(object param, out TraceLogParameter result)
        {
            result = new TraceLogParameter();

            if (param == null)
            {
                string msg = Utility.UtilityClass.GetStringResource(this, "ThereIsNoData", "There is no data.");
                Manager.MessageWindowManager.Instance.Show(EquipmentInstance, "UserSelectet", msg);
            }

            if ((param is object[]) == false)
            {
                Manager.LogManager.Instance.WriteSystemLog("SearchCommandHandler's param is not object[].");
                return false;
            }

            var parameters = param as object[];

            try
            {
                result.BeginDate = (parameters[0] as LogSearchingDateTime).ToDateTime();
                result.EndDate = (parameters[1] as LogSearchingDateTime).ToDateTime();
                return true;
            }
            catch (Exception e)
            {
                Manager.LogManager.Instance.WriteSystemLog(e.ToString());
                return false;
            }
        }