public OperationResult <IList <IEmployeeDTO> > SearchEmployeeByRawQuery(ISearchEmployeeDTO employeeDTO, bool checkTerminationDate)
        {
            OperationResult <IList <IEmployeeDTO> > searchEmployee = null;

            try
            {
                IUserDAC             userDAC     = (IUserDAC)DACFactory.Instance.Create(DACType.UserManagerDAC);
                IList <IEmployeeDTO> userDTOList = userDAC.SearchEmployeeByRawQuery(employeeDTO, checkTerminationDate);
                if (userDTOList != null)
                {
                    searchEmployee = OperationResult <IList <IEmployeeDTO> > .CreateSuccessResult(userDTOList);
                }
                else
                {
                    searchEmployee = OperationResult <IList <IEmployeeDTO> > .CreateFailureResult("SearchEmployeeByRawQuery Method Failed");
                }
            }
            catch (DACException dacEx)
            {
                searchEmployee = OperationResult <IList <IEmployeeDTO> > .CreateErrorResult(dacEx.Message, dacEx.StackTrace);
            }
            catch (Exception ex)
            {
                ExceptionManager.HandleException(ex);
                searchEmployee = OperationResult <IList <IEmployeeDTO> > .CreateErrorResult(ex.Message, ex.StackTrace);
            }
            return(searchEmployee);
        }