ASP.NET核心:正确的模式传递DbContext分离类库?

问题描述:

这的确是一个什么会是一个推荐模式的问题...ASP.NET核心:正确的模式传递DbContext分离类库?

我使用ASP.NET 2.0的核心,并使用依赖注入,让我的控制器和其他类有访问IMyDatabaseRepositor,通过类的构造函数。

我也有几个其他项目在单独的程序集。我正在考虑让这些其他项目也做一些存储库工作。我们真的在谈论提供对现有DbContext的访问。

我应该以某种方式通过IMyDatabaseRepository实例方法在其他项目中的类,或者应该那些类只要实现自己的IMyDatabaseRepository(和做自己的“启动”和连接字符串的东西数据库和DI)?

我不确定其他项目类是否也可以以某种方式使用IServicesCollection,以便从我的主ASP.NET Core Web应用程序获取DI实例。

有什么想法?

图书馆不应该撰写对象图,only the startup project应该。

这意味着,在库中,您只需使用构造函数注入,而在你的Startup类,你从所有库注册的所有组件。

+0

史蒂文,你是对的。这就像魔术。我只是在我的单独的类库中使用普通的依赖注入,并且假定它们在Web应用程序旁边执行(使用Startup),注入才起作用。的确非常酷。 – user2737646