asp.net-mvc – ASP.NET MVC中的UserManager.FindByNameAsync速
发布时间:2020-12-16 09:55:44 所属栏目:asp.Net 来源:网络整理
导读:我有一个基于ASP.NET MVC框架的站点.虽然我使用异步方法登录用户,但我发现用户登录网站需要花费很长时间.我使用过Visual Studio的诊断工具,发现这行代码在代码执行期间占用了大部分时间. var user = await UserManager.FindByNameAsync(model.Email); 完整代
我有一个基于ASP.NET MVC框架的站点.虽然我使用异步方法登录用户,但我发现用户登录网站需要花费很长时间.我使用过Visual Studio的诊断工具,发现这行代码在代码执行期间占用了大部分时间.
var user = await UserManager.FindByNameAsync(model.Email); 完整代码: public async Task<ActionResult> Login(LoginViewModel model,string returnUrl) { if (!ModelState.IsValid) { return View(model); } var user = await UserManager.FindByNameAsync(model.Email); if (user != null) { var getPasswordResult = UserManager.CheckPassword(user,model.Password); if (getPasswordResult) { AuthenticationManager.SignOut(DefaultAuthenticationTypes.ApplicationCookie); var identity = await UserManager.CreateIdentityAsync( user,DefaultAuthenticationTypes.ApplicationCookie); AuthenticationManager.SignIn(new AuthenticationProperties { IsPersistent = model.RememberMe },identity); if (model.RememberMe == true) { HttpCookie cookie = new HttpCookie("UsersLogin"); cookie.Values.Add("UserName",model.Email); cookie.Expires = DateTime.Now.AddDays(15); Response.Cookies.Add(cookie); } return RedirectToAction("NavigateAuthUser","Home",new { ReturnUrl = returnUrl }); } else { ModelState.AddModelError("","Invalid login attempt."); return View(model); } } return new EmptyResult(); } 有什么改善表现的建议吗? 解决方法
对于解决方法,我使用:
_db.Users.First(x => x.UserName == User.Identity.Name); 但我相信这不是最好的方法 (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
相关内容
- asp.net – 如何从相同的解决方案的MVC项目调试Web API项目
- asp.net下大文件上传知识整理
- 如何在ASP.NET按钮中使用Twitter Bootstrap图标?
- ASP.NET Core Identity 实战(1)——Identity 初次体验
- asp.net-mvc – 如何使用Ninject注入Identity类?
- asp.net – Web开发.NET最佳实践
- ASP.NET路由 – 自定义路由完全跳过Global.asax中的所有内容
- asp.net-mvc – MVC4 Web API或MVC3 JsonResult
- asp.net-mvc – 使URL特定于(通过路由)
- asp.net – 什么时候调用Application_End,我该如何手动导致
推荐文章
站长推荐
- asp.net – HttpContext.Current不解析在MVC 4项
- 如何从ASP.NET MVC中的某些操作的Authorize Attr
- asp.net – 更新ValidationSummary列表控件模糊?
- asp.net-mvc – asp.mvc中渲染的区别是什么
- 基于ASP.Net Core开发的一套通用后台框架
- ASP.NET 5未在开发模式下运行
- active-directory – IdentityServer3 – 适用于
- asp.net-mvc – 如何在ASP.NET Web API中获取IpA
- asp.net-mvc – 控制器和操作方法之间丢失的会话
- asp.net-mvc – 编写单元测试以验证所有ASP.NET
热点阅读