Ejemplo n.º 1
0
        public KKFException(
            ILogger logger,
            KKFExceptionCode code,
            string[] paramters,
            ENLanguage Language = ENLanguage.TH,
            int extendLv        = 1,
            [CallerLineNumber] int lineNumber = 0)
            : base(
                string.Format(code + ":"
                              + (Language == ENLanguage.EN ? Util.AttributeUtil.GetAttributeOfType <KKFExceptionDescription>(code).EN :
                                 Language == ENLanguage.CN ? Util.AttributeUtil.GetAttributeOfType <KKFExceptionDescription>(code).CN :
                                 Util.AttributeUtil.GetAttributeOfType <KKFExceptionDescription>(code).TH)
                              + " #REFID : " + (logger == null ? "NULL" : logger.RefID),
                              paramters)
                )
        {
            this.KKFCode = code;
            StackTrace stackTrace = new StackTrace();

            this.LineNumber = lineNumber;
            this.ClassName  = stackTrace.GetFrame(extendLv).GetMethod().DeclaringType.FullName;
            this.MethodName = stackTrace.GetFrame(extendLv).GetMethod().Name;
            if (logger != null)
            {
                logger.LogWrite("[ERROR] " + this.Message, lineNumber, this.ClassName, this.MethodName);
            }
            else
            {
                Console.Error.WriteLine("[ERROR] " + this.Message);
            }
        }
Ejemplo n.º 2
0
 public KKFException(ILogger logger, KKFExceptionCode code, ENLanguage Language = ENLanguage.TH, [CallerLineNumber] int lineNumber = 0)
     : this(logger, code, new string[] { }, Language, 2, lineNumber)
 {
 }