public override object InternalGet(string key) { object obj = null; //if (rtc != null) // obj = rtc.Get(key); if (atc != null) { obj = atc.Get(key); } if (obj == null) { obj = base.InternalGet(key); } if (obj != null && obj is OnRequestDelegate) { obj = ((OnRequestDelegate)obj).Invoke(key, this); Put(key, obj); } if (obj == null) { if (_LateBoundContextItems.ContainsKey(key)) { OnRequestDelegate lbc = _LateBoundContextItems[key]; obj = lbc.Invoke(key, this); Put(key, obj); } } return(obj); }
/// <summary> /// 处理业务逻辑 /// </summary> /// <param name="userToken"></param> public override void HttpHandle(IUserToken userToken) { IHttpResult result = null; try { this.InitSession(userToken); switch (Request.Method) { case ConstHelper.GET: case ConstHelper.POST: case ConstHelper.PUT: case ConstHelper.DELETE: if (Request.Query.Count > 0) { foreach (var item in Request.Query) { Request.Parmas[item.Key] = item.Value; } } if (Request.Forms.Count > 0) { foreach (var item in Request.Forms) { Request.Parmas[item.Key] = item.Value; } } if (OnRequestDelegate != null) { OnRequestDelegate.Invoke(this); } else { result = GetActionResult(); } break; case ConstHelper.OPTIONS: result = new HttpEmptyResult(); break; default: result = new HttpContentResult("不支持的请求方式", System.Net.HttpStatusCode.NotImplemented); break; } } catch (Exception ex) { result = OnException?.Invoke(this, ex); } if (result != null && !(result is IBigDataResult)) { Response.SetCached(result, this.Session.CacheCalcString); Response.End(); } }
public void InviteFriends(OnRequestDelegate callback) { if (callback != null) { this.InviteFriendsCB = callback; } Lang lang = Service.Lang; string message = lang.Get("FB_INVITE_MESSAGE", new object[0]); string title = lang.Get("FB_INVITE_TITLE", new object[0]); FacebookManager.InviteFriends(message, title, new FacebookDelegate <IAppRequestResult>(this.OnFacebookInviteFriends)); }
public void InviteFriends(OnRequestDelegate callback) { if (callback != null) { this.InviteFriendsCB = callback; } Lang lang = Service.Get <Lang>(); string message = lang.Get("FB_INVITE_MESSAGE", new object[0]); string title = lang.Get("FB_INVITE_TITLE", new object[0]); FacebookManager.Instance.InviteFriends(message, title, new FacebookInviteCompleteDelegate(this.OnFacebookInviteFriends)); }
private void _webHost_OnRequestDelegate(Http.Model.IHttpContext context) { OnRequestDelegate?.Invoke(context); }
/// <summary> /// 处理业务逻辑 /// </summary> /// <param name="userToken"></param> public override void HttpHandle(IUserToken userToken) { IHttpResult result = null; try { this.InitSession(userToken); switch (this.Request.Method) { case ConstHelper.GET: case ConstHelper.POST: case ConstHelper.PUT: case ConstHelper.DELETE: if (this.Request.Query.Count > 0) { foreach (var item in this.Request.Query) { this.Request.Parmas[item.Key] = item.Value; } } if (this.Request.Forms.Count > 0) { foreach (var item in this.Request.Forms) { this.Request.Parmas[item.Key] = item.Value; } } if (OnRequestDelegate != null) { OnRequestDelegate.Invoke(this); } else { result = GetActionResult(); } break; case ConstHelper.OPTIONS: result = new EmptyResult(); break; default: result = new ContentResult("不支持的请求方式", System.Net.HttpStatusCode.HttpVersionNotSupported); break; } } catch (Exception ex) { result = OnException.Invoke(this, ex); if (result == null) { result = new ContentResult("请求发生异常:" + ex.Message, System.Net.HttpStatusCode.InternalServerError); } } if (result != null) { if (!(result is IBigDataResult || result is IEventStream)) { Response.SetCached(result, this.Session.CacheCalcString); Response.End(); } } }
private void HttpContext_OnRequestDelegate(IHttpContext context) { OnRequestDelegate?.Invoke(context); }
public void RegisterOnRequestDelegate(string key, OnRequestDelegate item) { _LateBoundContextItems[key] = item; }
/// <summary> /// 处理业务逻辑 /// </summary> /// <param name="userToken"></param> /// <param name="httpMessage"></param> public override void HttpHandle(IUserToken userToken, HttpMessage httpMessage) { base.HttpHandle(userToken, httpMessage); IHttpResult result = null; try { switch (Request.Method) { case ConstHelper.GET: case ConstHelper.POST: case ConstHelper.PUT: case ConstHelper.DELETE: if (Request.Query.Count > 0) { foreach (var item in Request.Query) { Request.Parmas[item.Key] = item.Value; } } if (Request.Forms.Count > 0) { foreach (var item in Request.Forms) { Request.Parmas[item.Key] = item.Value; } } if (OnRequestDelegate != null) { OnRequestDelegate.Invoke(this); } else { result = GetActionResult(); } break; case ConstHelper.OPTIONS: result = new HttpEmptyResult(); break; default: result = new HttpContentResult("不支持的请求方式", System.Net.HttpStatusCode.HttpVersionNotSupported); break; } } catch (Exception ex) { result = OnException?.Invoke(this, ex); } if (result != null) { if (!(result is IBigDataResult)) { if (result is IFileResult && _webHost.WebConfig.IsStaticsCached) { Response.SetCached(result, "60,60"); } else { Response.SetCached(result, this.Session.CacheCalcString); } Response.End(); } } }