コード例 #1
0
        /// <summary>
        /// The action that is executed for all ServiceProxy requests.  This method
        /// returns an ActionResult based on the specified file extension.
        /// </summary>
        /// <param name="className"></param>
        /// <param name="methodName"></param>
        /// <param name="ext"></param>
        /// <param name="jsonParams"></param>
        /// <param name="view"></param>
        /// <returns></returns>
        public ActionResult Post(
            string className,
            string methodName,
            string ext,
            string jsonParams = null,
            string view       = null)
        {
            ExecutionRequest request = new ExecutionRequest
            {
                ClassName  = className,
                MethodName = methodName,
                Ext        = ext,
                JsonParams = jsonParams,
                ViewName   = view ?? "Default",
                Context    = new HttpContextWrapper(ControllerContext.HttpContext)
            };

            try
            {
                request.Execute();
            }
            catch (Exception ex)
            {
                string format = "An error occurred executing {0}.{1}: {2}\r\n{3}";
                request.Result = (object)string.Format(format, className, methodName, ex.Message, ex.StackTrace ?? "");
                Log.AddEntry(format, ex, className, methodName, ex.Message, ex.StackTrace ?? "");
            }

            return(GetActionResult(request));
        }
コード例 #2
0
        public ActionResult Get(string className, string methodName, string ext)
        {
            ExecutionRequest request = new ExecutionRequest(className, methodName, ext);

            request.Request  = new RequestWrapper(Request);
            request.Response = new ResponseWrapper(Response);
            try
            {
                request.Execute();
            }
            catch (Exception ex)
            {
                string format = "An error occurred executing {0}.{1}: {2}\r\n{3}";
                request.Result = (object)string.Format(format, className, methodName, ex.Message, ex.StackTrace ?? "");
                Log.AddEntry(format, ex, className, methodName, ex.Message, ex.StackTrace ?? "");
            }

            return(GetActionResult(request));;
        }