public OperationResult <INoticeDTO> CreateNotice(INoticeDTO noticeDTO) { OperationResult <INoticeDTO> createNoticeReturnValue = null; try { EmployeePortalValidationResult validationResult = Validator <NoticeValidator, INoticeDTO> .Validate(noticeDTO, ValidationConstants.Common + "," + ValidationConstants.CreateNotice); if (!validationResult.IsValid) { createNoticeReturnValue = OperationResult <INoticeDTO> .CreateFailureResult(validationResult); } else { INoticeDAC noticeDAC = (INoticeDAC)DACFactory.Instance.Create(DACType.NoticeManagerDAC); INoticeDTO returnedNoticeDTO = noticeDAC.CreateNotice(noticeDTO); if (returnedNoticeDTO != null) { createNoticeReturnValue = OperationResult <INoticeDTO> .CreateSuccessResult(returnedNoticeDTO, "Notice created successfully"); } else { createNoticeReturnValue = OperationResult <INoticeDTO> .CreateFailureResult("Insertion failed!"); } } } catch (DACException dacEx) { createNoticeReturnValue = OperationResult <INoticeDTO> .CreateErrorResult(dacEx.Message, dacEx.StackTrace); } catch (Exception ex) { ExceptionManager.HandleException(ex); createNoticeReturnValue = OperationResult <INoticeDTO> .CreateErrorResult(ex.Message, ex.StackTrace); } return(createNoticeReturnValue); }