public static TopResponse GetTopResponse(this NameValueCollection parameters, Type type, ITopCache cache = null) { if (type == null) { throw new TopException(1, "method is null"); } var req = Activator.CreateInstance(type); TopResponse rsp = null; if (req is IParamsValidate) { (req as IParamsValidate).Validate(parameters); } if (cache != null && req is ICacheRequest) { string key = (req as ICacheRequest).GetKey(parameters); rsp = cache.Read(key); } if (rsp == null && req is IParamsRequest) { rsp = (req as IParamsRequest).GetResponse(parameters); } return rsp; }
public static TopResponse GetTopResponse(this HttpRequest request, IParamsRequest req, ITopCache cache = null) { if (req is IParamsRequest) { var parameters = request.HttpMethod.ToUpper() == "GET" ? request.QueryString : request.Form; return (req as IParamsRequest).GetTopResponse(parameters, null); } throw new TopException(1, "method is null"); }
public static TopResponse GetTopResponse(this HttpRequest request, Type type, ITopCache cache = null) { if (type == null) { throw new TopException(1, "method is null"); } var req = Activator.CreateInstance(type); if (req is IParamsRequest) { var parameters = request.HttpMethod.ToUpper() == "GET" ? request.QueryString : request.Form; return (req as IParamsRequest).GetTopResponse(parameters, null); } return new JsonResponse(); }
public static TopResponse GetTopResponse(this HttpRequest request, Type type, ITopCache cache = null) { if (type == null) { throw new TopException(1, "method is null"); } var parameters = request.HttpMethod.ToUpper() == "GET" ? request.QueryString : request.Form; var req = Activator.CreateInstance(type); if (req is IParamsValidate) { (req as IParamsValidate).Validate(parameters); } var rsp = ReflectionUtils.GetRequestType(req, parameters); return rsp; }
public static TopResponse GetTopResponse(this IParamsRequest req, NameValueCollection parameters, ITopCache cache = null) { TopResponse rsp = null; if (req is IParamsValidate) { (req as IParamsValidate).Validate(parameters); } if (cache != null && req is ICacheRequest) { string key = (req as ICacheRequest).GetKey(parameters); rsp = cache.Read(key); } if (rsp == null) { rsp = req.GetResponse(parameters); } return rsp; }
public static TopResponse GetTopResponse(this HttpRequest request, Type type, ITopCache cache = null) { if (type == null) { throw new TopException(1, "method is null"); } var parameters = request.HttpMethod.ToUpper() == "GET" ? request.QueryString : request.Form; var req = Activator.CreateInstance(type); if (req is IParamsValidate) { (req as IParamsValidate).Validate(parameters); } var rsp = ReflectionUtils.GetRequestType(req, parameters); return(rsp); }
public static string GetJsonResponse(this NameValueCollection parameters, Type type, ITopCache cache = null) { var rsp = parameters.GetTopResponse(type, cache); if (rsp is JsonResponse) { return rsp.ToJson(); } throw new TopException(2, "request error"); }