コード例 #1
0
        /// <summary>
        /// 产生错误
        /// </summary>
        /// <param name="actionExecutedContext"></param>
        public override void OnActionExecuted(HttpActionExecutedContext actionExecutedContext)
        {
            WebApiProp wenApiProp = actionExecutedContext.Request.Properties[Key] as WebApiProp;

            var ActionName     = actionExecutedContext.ActionContext.ActionDescriptor.ActionName;
            var ControllerName = actionExecutedContext.ActionContext.ActionDescriptor.ControllerDescriptor.ControllerName;

            if (ControllerName != "Log")
            {
                BLogRecord log = new BLogRecord()
                {
                    ActionName     = ActionName,
                    ControllerName = ControllerName + "Controller",
                    STime          = wenApiProp.ExecuteStartTime,
                    ETime          = DateTime.Now,
                    CreateDate     = DateTime.Now,
                    ActionPara     = wenApiProp.GetCollections(wenApiProp.ActionParams),
                    TimeSpan       = decimal.Parse((wenApiProp.ExecuteEndTime - wenApiProp.ExecuteStartTime).TotalSeconds.ToString()),
                    IP             = wenApiProp.GetIP()
                };

                if (actionExecutedContext.Exception != null)
                {
                    log.Category = "错误";
                    log.Contents = actionExecutedContext.Exception.Message;
                }
                else
                {
                    log.Category = "正常";
                }
                _iLogAppService = GetLogAppService();  //iLogAppService;
                _iLogAppService.AddLogRecord(log);
            }
        }
コード例 #2
0
        /// <summary>
        /// 调用时触发
        /// </summary>
        /// <param name="actionContext"></param>
        public override void OnActionExecuting(HttpActionContext actionContext)
        {
            base.OnActionExecuting(actionContext);

            WebApiProp prop = new WebApiProp();

            prop.ExecuteStartTime   = DateTime.Now;
            prop.ActionParams       = actionContext.ActionArguments;
            prop.HttpMethod         = actionContext.Request.Method.Method;
            prop.HttpRequestHeaders = actionContext.Request.Headers.ToString();

            actionContext.Request.Properties[Key] = prop;
        }