public virtual void OnExecuting(object context) { var realContext = context as ActionExecutingContext; RequestTime = DateTime.Now; var paramDic = realContext.ActionArguments.ToDictionary(k => k.Key, v => v.Value); Entrance = realContext.RouteData.Values["controller"].ToString(); Action = realContext.RouteData.Values["action"].ToString(); Header = realContext.HttpContext.Request.Headers.ToDictionary(k => k.Key, v => v.Value as object); ReqParams = realContext.HttpContext.Request.GetRequestValue().Result; FuncParams = paramDic; #region 参数验证 //微软的参数验证 if ( 1 == 1 && paramDic != null && paramDic.Count() != 0 && paramDic.Values.Select(o => o.IsExtendType <IDTO_Input>()).Any(o => o) && realContext.ModelState.IsValid == false ) { var errorMsg = realContext.ModelState.GetValidationSummary(); throw new Exception_VerifyError(errorMsg); } //自定义的参数验证 FuncParams.Verify(); #endregion }
public ParamsAccessor(FuncParams <A, T> selector) { if (selector == null) { throw new ArgumentNullException("selector"); } // _selector = selector; }
public ParamsAccessor(FuncParams <A, T> selector, ActionParams <A, T> assigner) { if (selector == null && assigner == null) { throw new ArgumentException("Selector or assigner must specified"); } // _selector = selector; _assigner = assigner; }
// prepend [s,b] to the set of nextparams public FuncParams(string ptype, string name, bool compliant, FuncParams fp) { paramString = ptype + " " + name + ", " + fp.paramString; if (!compliant || !fp.isCLSCompliant) { isCLSCompliant = false; } else { isCLSCompliant = true; } }
public virtual void OnExecuting(object context) { MS.ServiceContext realContext = context as MS.ServiceContext; RequestTime = DateTime.Now; var paramArray = realContext.RestoreParams(); Entrance = realContext.ServiceType.Name; Action = realContext.MethodInfo.Name; Header = realContext.CallContext.RequestHeaders.AsEnumerable().ToList().ToDictionary(k => k.Key, v => v.Value as object); ReqParams = paramArray; FuncParams = paramArray; #region 参数验证 //自定义的参数验证 FuncParams.Verify(); #endregion }
internal void Bind(Type type) { MethodInfo tmx = type.GetMethod(info.MethodName); function = (FuncParams)Delegate.CreateDelegate(typeof(FuncParams), tmx); }
void ReturnToOriginalPosition(FuncParams param) { param.obj.SetActive(false); param.obj.transform.position = param.position; }