protected override void OnActionExecuting(ActionExecutingContext filterContext)
        {
            string macs     = filterContext.RequestContext.HttpContext.Request.Headers["Client_Macs"] ?? "";
            string ips      = filterContext.RequestContext.HttpContext.Request.Headers["Client_IPS"] ?? "";
            string clientid = filterContext.RequestContext.HttpContext.Request.Headers["Client_ID"] ?? "";
            string nodeType = filterContext.RequestContext.HttpContext.Request.Headers["Node_Type"] ?? "";

            IPS      = ips;
            MACS     = macs;
            ClientId = clientid;
            ApiResultSummary.StartRequest(System.Web.HttpContext.Current.Request, clientid);
            if (_lastGetNodeTime == null || (DateTime.Now - _lastGetNodeTime.Value).TotalSeconds > _cacheTimeOutSecs)
            {
                lock (_allNodes)
                {
                    if (_lastGetNodeTime == null || (DateTime.Now - _lastGetNodeTime.Value).TotalSeconds > _cacheTimeOutSecs)
                    {
                        _allNodes        = nodebll.GetAllNode();
                        _lastGetNodeTime = DateTime.Now;
                    }
                }
            }
            Ruanal.WebDomain.Model.Node model = _allNodes.FirstOrDefault(x => (x.ClientId ?? "").Trim() == clientid.Trim());
            //  Ruanal.WebDomain.Model.Node model = nodebll.GetServerByClientId(clientid);// serverbll.GetUnionServer(arrmac, arrip, clientid);
            if (model == null)
            {
                ClientsCache.AddClientInfo(clientid, string.Format("【ClientId】{2} 【{3}】【MAC】{0} 【IP】{1}", macs, ips, clientid, nodeType));
            }
            else
            {
                ClientsCache.Remove(clientid);
            }
            base.OnActionExecuting(filterContext);
        }
Beispiel #2
0
 protected override void OnActionExecuted(ActionExecutedContext filterContext)
 {
     ApiResultSummary.EndRequest(System.Web.HttpContext.Current.Request);
     base.OnActionExecuted(filterContext);
 }