如果用户存在,我想问Owin。把我在网上找到的随机内容放在一起,我最终得到了这个(完全未经测试的代码):
/// <summary> Returns true if the TestUser user exists in the membership database. </summary>
public static bool UserExists(ApplicationDbContext db, string username)
{
var userManager = new Microsoft.AspNet.Identity.UserManager<ApplicationUser>(
new Microsoft.AspNet.Identity.EntityFramework.UserStore<ApplicationUser>(db));
var user = userManager.FindByName(username);
return (user != null);
}
我的问题是,我真的需要那个冗长,丑陋的表达来获得一个新的UserManager吗?或者是否有更好,更有效,更清洁或更正确的方法来做到这一点?
现在我更仔细地看一下,我发现UserManager和UserStore都是一次性的。我想在using
块中包装吗?
答案 0 :(得分:0)
它与创建大多数对象相同,但在这种情况下,我会添加一些using语句来简化它:
using Microsoft.AspNet.Identity;
using Microsoft.AspNet.Identity.EntityFramework;
这将使您的实例化声明更加整洁:
var userManager = new UserManager<ApplicationUser>(
new UserStore<ApplicationUser>(db));