- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
默认的 MVC 5 + Identity 2.1 项目包含此行(在 Startup.Auth.cs 中):
app.CreatePerOwinContext<ApplicationUserManager>ApplicationUserManager.Create);
...其中静态 Create
方法定义(在 IdentityConfig.cs 中)如下:
public static ApplicationUserManager Create(IdentityFactoryOptions<ApplicationUserManager> options, IOwinContext context)
{
var manager = new ApplicationUserManager(new UserStore<ApplicationUser>(context.Get<ApplicationDbContext>()));
...
}
注意新的 UserStore<ApplicationUser>
是如何产生的在那里创建,并传递给 ApplicationUserManager
构造函数。还要注意 UserStore<T>
是一次性的(基类实现 IDisposable
)。
这让我觉得很奇怪,因为我想知道谁负责处理这个新创建的 UserStore
.我预计 ApplicationUserManager
(或其基类)必须在它本身被处置时处置它。但是没有:我查看了源代码,似乎没有。所以没有人处置该实例!
为什么这样可以?你什么时候不想处理一个实现了IDisposable
的类的实例? ?
最佳答案
我认为这没问题,因为 UserStore
实际上包装了 Entity Framework 的 DbContext
类。虽然 DbContext
也是 Disposable
但 refer to this blog post处置 DbContext
不是强制性的。另外值得指出的是,处理注入(inject)的对象并不是一个好主意,事实上管理对象的生命周期是注入(inject)者的责任。因此很明显 UserManager
在这种情况下不会处理 UserStore
。
关于c# - 为什么可以不处理 UserStore,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33225647/
我正在尝试了解 vNext。 我编写了自定义 UserStore,它与 MongoDB 一起使用并实现了这些接口(interface): public class UserStore : IUse
默认的 MVC 5 + Identity 2.1 项目包含此行(在 Startup.Auth.cs 中): app.CreatePerOwinContextApplicationUserManager
我将 ASP.Identity 与自定义 UserStore 和 RoleStore 结合使用。 这是我的数据库上下文: public class AppDbContext : IdentityD
使用 ninject 将 UserManager 和 UserStore 注入(inject) Controller 的最优雅的方法是什么?例如,上下文可以这样注入(inject): kernel.
我是 ASP.NET Identity 的新手。为了更好地理解事情,我正在做 ASP.NET Identity 的自定义实现。我能够使用自定义代码成功创建用户。然而 FindAsync(usernam
这够好吗?或者我还必须处理 UserStore 吗?如果我确实需要任何建议,我们将不胜感激。我是 ASP.NET Identity 的新手。 using (var applicationDbConte
这是我的设置: public class ApplicationUser : IdentityUser { } public class ApplicationRole : IdentityRole
我已经实现了自定义 UserStore , 它实现了 IUserStore和 IUserPasswordStore . 我的登录操作方法如下: if (ModelState.IsValid) {
我正在尝试在 ASP.NET Core 中实现身份系统应用程序(RC2 库)并且有一个特殊的挂断让我发疯。 首先我是不是 使用 Entity Framework 。我什至没有使用 SQL。我正在备份到
我有以下通用 webApi2 AccountController:- private const string LocalLoginProvider = "Local"; privat
我正在尝试清理新 MVC5/Owin 安全实现中开箱即用的 AccountController.cs 的默认实现。我已将构造函数修改为如下所示: private UserManager UserMan
我正在做一个数据库优先的项目。 我在 VS2013 中创建了一个新的 MVC5 站点。 我创建了一个具有电子邮件属性的 applicationUser: public class Applicatio
我即将进行身份转换 Microsoft.AspNet.Identity.EntityFramework项目 (v 2.0.0.0) 到使用 NHibernate 作为其持久性机器的项目。我的第一个“绊
给定 MVC Controller 构造函数的典型设置,将 UserManager(采用 UserStore)传递给它的父类,如何将其转换为通过 IoC 注入(inject)? 从这里开始: publ
我对自定义 UserManager 和 UserStore 有点困惑。开箱即用的解决方案附带 EF 实现,我不想使用 EF,而是使用我自己的使用 MSSQL 的 DAL。我希望拥有基于声明的安全性,其
我可以使用以下代码存储用户的访问 token 以供以后在我现有的数据库中使用: // This works - Will use access token for API calls later. d
我已经为使用 ASP.NET 5、MVC 6、EF 7 和 Identity 3 的项目实现了自定义 RoleStore 和自定义 UserStore。但是,我不太清楚如何配置身份以使用我的自定义 R
我正在尝试使用 ASP.NET Core 1(2016 年 5 月)构建新网站,并且我需要实现不同类型的登录过程(不是使用 SQL Server)。 所以我正在尝试实现 MyOwnUserStore,
在使用 OWIN 请求管道创建 ApplicationUserManager 时,我在使用依赖注入(inject)创建自定义 UserStore 时遇到问题。 背景 我正在尝试将 Web 应用程序中的
我有一个相当简单的问题。我只是想测试 asp.net Identity 的 UserStore 方法并在我的测试中使用它。本质上,目标只是创建一个模拟用户存储(在内存中),插入一个虚拟用户并验证插入是
我是一名优秀的程序员,十分优秀!