示例#1
0
        public static ProcessResult DefaultRequestProcessor(object contentValue, IEnumerable<KeyValuePair<string, string>> beetlePrms, ActionContext actionContext,
                                                            IBeetleService service, IContextHandler contextHandler,
                                                            IQueryHandler<IQueryable> queryableHandler, IContentHandler<IEnumerable> enumerableHandler) {
            var queryable = contentValue as IQueryable;
            if (queryable != null)
                return queryableHandler.HandleContent(queryable, beetlePrms, actionContext, service, contextHandler);

            if (!(contentValue is string)) {
                var enumerable = contentValue as IEnumerable;
                if (enumerable != null)
                    return enumerableHandler.HandleContent(enumerable, beetlePrms, actionContext, service, contextHandler);
            }

            return new ProcessResult(actionContext) { Result = contentValue };
        }