Пример #1
0
        public void OnActionExecuting(ActionExecutingContext filterContext)
        {
            actionAudit = new ACTION_AUDIT();

            actionAudit.CONTROLLER = filterContext.ActionDescriptor.ControllerDescriptor.ControllerName;
            actionAudit.ACTION     = filterContext.ActionDescriptor.ActionName;
            actionAudit.USER_AGENT = filterContext.HttpContext.Request.UserAgent.Substring(0, 60);

            actionAudit.BEGIN_AUDIT_TIME = DateTime.Now;
            actionAudit.IP          = filterContext.HttpContext.Request.UserHostAddress;
            actionAudit.DESCRIPTION = Dns.GetHostName();
            if (filterContext.ActionParameters.Count > 0)
            {
                var ParameterFirst = filterContext.ActionParameters.First();
                if (!typeof(LoginViewModel).IsInstanceOfType(ParameterFirst.Value))
                {
                    if (typeof(System.Web.HttpPostedFileBase[]).IsInstanceOfType(ParameterFirst.Value))
                    {
                        var fileFirst = (System.Web.HttpPostedFileBase[])ParameterFirst.Value;
                        if (fileFirst.First() != null)
                        {
                            var fileObj = fileFirst.First();
                            var tmpObj  = new
                            {
                                FileName      = fileObj.FileName,
                                ContentLength = fileObj.ContentLength,
                                ContentType   = fileObj.ContentType
                            };
                            var DataObject = Json.Encode(tmpObj);
                            actionAudit.DESCRIPTION = actionAudit.DESCRIPTION + ". Thông tin Object:" + DataObject.ToString();
                        }
                    }
                    else
                    {
                        var DataObject = Json.Encode(ParameterFirst.Value);
                        actionAudit.DESCRIPTION = actionAudit.DESCRIPTION + ". Thông tin Object:" + DataObject.ToString();
                    }
                }
            }
            string clientIP = filterContext.HttpContext.Request.Headers["X-Forwarded-For"];

            if (!string.IsNullOrWhiteSpace(clientIP))
            {
                actionAudit.IP = clientIP;
            }
            UserInfoBO loggedUser = filterContext.HttpContext.Session[SessionManager.USER_INFO] as UserInfoBO;

            if (loggedUser != null)
            {
                actionAudit.USER_NAME = loggedUser.TENDANGNHAP;
            }
        }
Пример #2
0
        public static void Insert(ACTION_AUDIT ActionAudit)
        {
            ActionAuditBusiness aab = new ActionAuditBusiness(new UnitOfWork());

            aab.Save(ActionAudit);

            /*
             * ListToInsert.Add(ActionAudit);
             * if (ListToInsert.Count >= GetMaxBulk())
             * {
             *  Entities context = new Entities();
             *  ActionAuditBusiness aab = new ActionAuditBusiness(context);
             *  aab.BulkInsert(ListToInsert);
             *  ListToInsert.Clear();
             * }
             */
        }