RavenDB.DependencyInjection 5.0.1
dotnet add package RavenDB.DependencyInjection --version 5.0.1
NuGet\Install-Package RavenDB.DependencyInjection -Version 5.0.1
<PackageReference Include="RavenDB.DependencyInjection" Version="5.0.1" />
paket add RavenDB.DependencyInjection --version 5.0.1
#r "nuget: RavenDB.DependencyInjection, 5.0.1"
// Install RavenDB.DependencyInjection as a Cake Addin #addin nuget:?package=RavenDB.DependencyInjection&version=5.0.1 // Install RavenDB.DependencyInjection as a Cake Tool #tool nuget:?package=RavenDB.DependencyInjection&version=5.0.1
RavenDB.DependencyInjection
用于在 ASP.NET Core 中使用 RavenDB 的依赖注入包。
此包允许您配置 RavenDB 的 DocumentStore
并在其依赖注入容器中创建一个单例。此外,您还可以配置一个 IAsyncDocumentSession
(或其同步等效物)以便在每个作用域内创建。
入门教程
通过 NuGet 安装 RavenDB.DependencyInjection 库。
Install-Package RavenDB.DependencyInjection
用法
将 RavenSettings 部分添加到您的 appsettings.json 中
"RavenSettings": {
"Urls": [
"http://live-test.ravendb.net"
],
"DatabaseName": "Demo",
"CertFilePath": "",
"CertPassword": ""
},
注意,CertFilePath
和 CertPassword
都是可选的。如果您使用证书连接到数据库,则此路径应该是相对于内容根的相对路径。您的证书存储在代码外吗?请参阅 手动配置。
然后在 Startup.cs 中,告诉 Raven 使用此数据库并将其添加到 DI 容器
public void ConfigureServices(IServiceCollection services)
{
// 1. Add an IDocumentStore singleton. Make sure that RavenSettings section exist in appsettings.json
services.AddRavenDbDocStore();
// 2. Add a scoped IAsyncDocumentSession. For the sync version, use .AddRavenSession().
services.AddRavenDbAsyncSession();
}
现在您可以通过控制器和服务注入 IDocumentStore
、IAsyncDocumentSession
或 IDocumentSession
。😎
配置 Raven 协议
您需要在 docStore.Initialize()
之前配置 RavenDB 协议或执行其他工作?这很简单
services.AddRavenDbDocStore(options =>
{
options.BeforeInitializeDocStore = docStore => docStore.Conventions.IdentityPartsSeparator = "-";
}
手动配置
您的 Raven 信息存储在代码之外,例如环境变量或 Azure Key Vault?如果是这样,您可以像这样配置您的文档存储
services.AddRavenDbDocStore(options =>
{
// Grab the DB name from appsettings.json
var dbName = options.Settings.DbName;
// But grab the cert and password from the cloud
var certBytes = Convert.FromBase64String(...); // load the certificate from wherever
var certPassword = ...; // grab the password from wherever
options.Certificate = new X509Certificate2(certBytes, certPassword);
});
查看示例项目以查看全部功能。
产品 | 版本 兼容以及额外的计算的框架版本。 |
---|---|
.NET | net8.0兼容。 net8.0-android已计算。 net8.0-browser已计算。 net8.0-ios已计算。 net8.0-maccatalyst已计算。 net8.0-macos已计算。 net8.0-tvos已计算。 net8.0-windows已计算。 |
-
net8.0
- Microsoft.Extensions.DependencyInjection (>= 8.0.0)
- Microsoft.Extensions.Hosting.Abstractions (>= 8.0.0)
- Microsoft.Extensions.Options.ConfigurationExtensions (>= 8.0.0)
- RavenDB.Client (>= 6.0.2)
NuGet包 (6)
显示依赖RavenDB.DependencyInjection的Top 5 NuGet包
包 | 下载 |
---|---|
RavenDB.Identity
简单的RavenDB身份验证提供程序,适用于ASP.NET Core。只需几行代码即可使用Raven存储您的用户和登录。 |
|
Dafitech.Common.Library
通用库具有处理Dafitech项目需求和编程风格的功能和方法。 |
|
Dafitech.Common.GlobalDomain
Dafitech通用全局域类和DTO |
|
Dafitech.Common.DataAccess
Dafitech数据库访问类和方法。 |
|
BccPay.Core.DataAccess
包描述 |
GitHub仓库
该包没有任何流行的GitHub仓库使用。
版本 | 下载 | 最后更新 |
---|---|---|
5.0.1 | 12,911 | 1/12/2024 |
5.0.0 | 303 | 1/12/2024 |
4.0.2 | 162,542 | 4/1/2021 |
4.0.1 | 806 | 3/30/2021 |
4.0.0 | 15,392 | 7/24/2020 |
3.1.0 | 11,037 | 11/13/2019 |
3.0.0 | 8,853 | 4/5/2019 |
2.0.3 | 7,041 | 3/11/2019 |
2.0.2 | 1,118 | 2/28/2019 |
2.0.1 | 1,829 | 2/28/2019 |
2.0.0 | 1,098 | 2/28/2019 |
1.0.0 | 2,023 | 6/28/2016 |
1.0.0-rc2 | 1,534 | 6/27/2016 |
.NET 8和Raven 6。