如何从 .NET 中的 AKKA.NET 参与者访问数据库?

Nik*_*hou 5 dependency-injection akka akka.net .net-core

我正在使用 AKKA.NET 在 .NET Core 控制台应用程序(框架 net46)中构建异步处理逻辑。

到目前为止,我已经使用内置的依赖注入来提供对我的 IDbConnection 对象(或 ApplicationDbContext for EF)的访问。这使得单元测试变得容易。

在处理从 Actor 内部访问数据库时,我非常怀疑什么是最佳实践。

一个简单的方法是编写这样的旧使用块:

using(var db = new ApplicationDbContext()) {
   ...query, modify and save objects using the db object
}
Run Code Online (Sandbox Code Playgroud)

并完全忽略 DI 容器。

我很想知道,在这种情况下,经验丰富的 AKKA 开发人员认为最佳实践是什么?