AspNetCore.Identity.RavenDb
1.0.0
最完整、最接近原始 EntityFramework 实现的用户和角色存储实现,它有详细的文档记录,并且包含非常有用的 RavenDB 扩展。支持.NET标准2.0
注意:对于 RavenDB v3.5 持久存储,将活动分支切换到
v3.x
ASP.NET Core Identity 是一个会员系统,允许您向应用程序添加登录功能。用户可以创建帐户并使用用户名和密码登录,也可以使用外部登录提供商,例如 Facebook、Google、Microsoft 帐户、Twitter 或其他。您可以将 ASP.NET Core Identity 配置为使用 RavenDB 数据库来存储用户名、密码和配置文件数据。
PM> Install-Package Maqduni.AspNetCore.Identity.RavenDb
注意:扩展也可以作为独立包安装,
PM> Install-Package Maqduni.RavenDb.Extensions
Startup.cs
)每个 HTTP 请求注册DocumentAsyncSession
,用于在数据库中存储用户/角色。在内部添加单例DocumentStore
。
public void ConfigureServices ( IServiceCollection services )
{
// Add ravendb services.
services . AddRavenDbAsyncSession ( Configuration . GetConnectionString ( "RavenDb" ) ) ;
services . AddIdentity < ApplicationUser , ApplicationRole > ( )
. AddRavenDbStores ( )
. AddDefaultTokenProviders ( ) ;
.. .
}
笔记:
DocumentStore
是一个单例,AsyncSession
根据每个 HTTP 请求进行实例化。- 如果数据库中不存在
"{userCollectionName}/ClaimsAndLogins"
索引,则会在应用程序启动时创建该索引。身份提供商依赖此索引来支持用户通过电子邮件、用户名、声明和登录名进行搜索。
请随意通过提供反馈或通过分叉和添加新功能或修复错误来为项目做出贡献。