/// <summary> /// 基础类JSON返回信息 /// </summary> protected virtual string JsonTextInvork(Func <string> _func) { return(ReturnHook.Hook(delegate() { if (_func == null) { throw new NullCallback(); } return new Text(true, _func()).ToJson(); })); }
/// <summary> /// 直接返回执行JSON信息 /// </summary> /// <param name="_func"></param> /// <returns></returns> protected virtual string JsonDirectInvork(Func <string> _func) { return(ReturnHook.Hook(() => { if (_func == null) { throw new NullCallback(); } return _func(); })); }
/// <summary> /// 将目标实体类转换成JSON字符串 /// </summary> /// <typeparam name="T"></typeparam> /// <param name="_func"></param> /// <returns></returns> protected virtual string JsonEntityInvork <T>(Func <T> _func) where T : class, new() { return(ReturnHook.Hook(() => { if (_func == null) { throw new NullCallback(); } Entity <T> entity = new Entity <T>(_func()); return entity.ToString(); })); }
/// <summary> /// 将目标集合转换成grid格式JSON字符串 /// </summary> /// <typeparam name="T"></typeparam> /// <param name="_func"></param> /// <returns></returns> protected virtual string JsonGridInvork <T>(QueryPagerData <T> _func) where T : class, new() { return(ReturnHook.Hook(delegate() { if (_func == null) { throw new NullCallback(); } Grid <T> grid = new Grid <T>(); int total; grid.AddRange(_func(out total)); grid.total = total; return grid.ToString(); })); }
/// <summary> /// 将目标集合转换成COMBO格式JSON字符串 /// </summary> protected virtual string JsonComboInvork <T, TKey, TVal>(IEnumerable <T> _array, Func <T, ComboItem <TKey, TVal> > _func) where T : class { return(ReturnHook.Hook(() => { if (_array == null || _array.Count() <= 0) { throw new NullParam(); } if (_func == null) { throw new NullCallback(); } Combo <TKey, TVal> combo = new Combo <TKey, TVal>(); foreach (var item in _array) { ComboItem <TKey, TVal> result = _func(item); combo.Add(result); } return combo.ToJson(); })); }