Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/asp.net/34.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# EntityFrameworkCore标识_C#_Asp.net_Entity Framework_Asp.net Core_Entity Framework Core - Fatal编程技术网

C# EntityFrameworkCore标识

C# EntityFrameworkCore标识,c#,asp.net,entity-framework,asp.net-core,entity-framework-core,C#,Asp.net,Entity Framework,Asp.net Core,Entity Framework Core,我创建了一个全新的ASP.Net核心web应用程序,并启用了标识服务。该框架帮助我创建了许多视图和视图模型,以处理创建、验证和删除用户的任务;然而,我对EF组件有点困惑,我是EF的新手,所以我可能遗漏了一些东西 AccountController将UserManager UserManager注入其中,例如,对于帐户创建,调用如下内容: var result = await _userManager.CreateAsync(user, model.Password); 据我所知,这是在调用Mi

我创建了一个全新的ASP.Net核心web应用程序,并启用了标识服务。该框架帮助我创建了许多视图和视图模型,以处理创建、验证和删除用户的任务;然而,我对EF组件有点困惑,我是EF的新手,所以我可能遗漏了一些东西

AccountController将UserManager UserManager注入其中,例如,对于帐户创建,调用如下内容:

var result = await _userManager.CreateAsync(user, model.Password);
据我所知,这是在调用Microsoft.AspNetCore.Identity中的功能,默认情况下直接映射到DB中的表dbo.ASPNetUsers或类似的功能。通常,我希望这样的功能位于与DB通信的服务中;这提供了一个抽象层和数据库网关

我的问题是,上述功能在某种意义上是否提供了相同的功能,或者我们是否有效地从网站直接与DB通信?

取决于IUserStore接口,其中有一个使用注入UserManager的EFCore的实现。也可以对各种接口进行其他实现。因此存在分层,UserManager不是直接与db对话,而是与服务接口对话

最棒的是它都是开源的,所以如果你想看看它是如何工作的,你可以很容易地做到