public async Task <IActionResult> RedirectDwz([FromRoute] string url, [FromServices] IDWZServices dwzInnerServices) { var m = await dWZServices.Load(url).ConfigureAwait(true); if (m == null) { return(new JsonResult(ActionStatusMessage.StaticMessage.ResourceNotExist)); } // Record(m); // 此处异步不会等待,所以服务器直接返回的同时把db清理了,导致Record方法报错 await dwzInnerServices.Open(m, currentUserService.CurrentUser); return(Redirect(m.Target)); }
/// <summary> /// 短网址 /// </summary> /// <param name="dWZServices"></param> /// <param name="currentUserService"></param> /// <param name="userActionServices"></param> public DWZController(IDWZServices dWZServices, ICurrentUserService currentUserService, IUserActionServices userActionServices) { this.dWZServices = dWZServices; this.currentUserService = currentUserService; this.userActionServices = userActionServices; }