A implementação mais completa e mais próxima do armazenamento de usuários e funções da implementação original do EntityFramework, está bem documentada e inclui extensões RavenDB muito úteis. Suporta .NET Standard 2.0
Nota: Para armazenamento de persistência RavenDB v3.5, mude a ramificação ativa para
v3.x
ASP.NET Core Identity é um sistema de associação que permite adicionar funcionalidade de login ao seu aplicativo. Os usuários podem criar uma conta e fazer login com um nome de usuário e senha ou podem usar um provedor de login externo, como Facebook, Google, conta da Microsoft, Twitter ou outros. Você pode configurar o ASP.NET Core Identity para usar um banco de dados RavenDB para armazenar nomes de usuário, senhas e dados de perfil.
PM> Install-Package Maqduni.AspNetCore.Identity.RavenDb
Nota: As extensões também podem ser instaladas como um pacote independente,
PM> Install-Package Maqduni.RavenDb.Extensions
Startup.cs
) Registrar DocumentAsyncSession
para cada solicitação HTTP é usado para armazenar usuários/funções no banco de dados. Adiciona o DocumentStore
singleton internamente.
public void ConfigureServices ( IServiceCollection services )
{
// Add ravendb services.
services . AddRavenDbAsyncSession ( Configuration . GetConnectionString ( "RavenDb" ) ) ;
services . AddIdentity < ApplicationUser , ApplicationRole > ( )
. AddRavenDbStores ( )
. AddDefaultTokenProviders ( ) ;
.. .
}
Observação:
DocumentStore
é um singleton eAsyncSession
é instanciado a cada solicitação HTTP.- O índice
"{userCollectionName}/ClaimsAndLogins"
será criado na inicialização do aplicativo se não existir no banco de dados. O provedor de identidade depende desse índice para permitir a pesquisa de usuários por email, nome de usuário, declarações e logins.
Sinta-se à vontade para contribuir com o projeto, fornecendo feedback ou bifurcando e adicionando novos recursos ou corrigindo bugs.