/// <summary>
 /// Constructor that will create the ErrorObject based on the Error Id
 /// </summary>
 /// <param name="ErrorId"></param>
 public ErrorObject(int ErrorId, Dictionary<string, string> parameters = null)
 {
     IErrorUtil ErrorUtil = new ErrorUtil();
     ErrorObject ErrorObject = ErrorUtil.GetError(ErrorId);
     this.Id = ErrorObject.Id;
     this.ErrorKey = ErrorObject.ErrorKey;
     this.Code = ErrorObject.Code;
     //If there is no parameters then put the error message as is
     if (parameters == null)
         this.Message = ErrorObject.Message;
     //If parameters is not null then replace each variable in the error message with it's appropriate parameter
     else
     {
         var message = ErrorObject.Message;
         foreach (var parameter in parameters)
         {
             if (ErrorObject.Message.Contains(parameter.Key))
                 message = message.Replace(parameter.Key, parameter.Value);
         }
         this.Message = message;
     }
 }