dependency-injection 相关问题

一种设计模式,通过动态地向软件组件中注入需要运行的依赖项来减少组件之间的耦合。

Autofac:如何防止处置通过ServiceCollection注册的服务?

如果我通过 ServiceCollection 注册所有服务,那么我就能够在重用此集合的不同 DI 实现之间进行切换:Autofac、Simple Injector 或 Microsoft。

回答 1 投票 0

Spring @Profile 如何与继承一起工作?

当前在一个项目中,我有称为页面对象类的父抽象类,它们通常由 2 或 3 个子类进行子类化,每个子类都基于特定的配置使用(用于考试...

回答 1 投票 0

如何注入依赖项

我正在尝试注入 GoogleSignIn 但在构建时抛出异常错误:[Dagger/MissingBinding] com.google.android.gms.auth.api.signin.GoogleSignInClient 如果没有 @Inject 则无法提供

回答 1 投票 0

我需要一个框架才能使用依赖注入吗? [重复]

这两天我一直在阅读和练习依赖注入,但没有任何效果,突然我发现依赖需要一些框架

回答 3 投票 0

具有多个 API 项目的 ASP.NET Core 6 Web API 基础项目

我有一个名为后端沙箱的项目。我希望这个项目成为我的解决方案的启动项目。一旦我运行这个项目,它应该运行依赖于它的所有其他项目。 其他项目...

回答 1 投票 0

如何使用SelectorBar、Frame和依赖注入

我使用 WinUi 3、社区工具包 mvvm 和 Net 8.0,使用 c# 作为语言。 我有一个概述页面,它应该以两种可能的方式显示项目集合。 在 App.xaml.cs 中,我添加了以下部分...

回答 1 投票 0

从 viewModel 中获取正确的文化资源字符串,在 kotlin jetpack compose 中注入上下文

我正在尝试从视图模型和用例中获取资源字符串,我有六个字符串翻译资源文件,但我总是得到默认的字符串翻译,没有得到既定的邪教...

回答 1 投票 0

HttpClient是如何注入到ctor中的?

我找到了这位演员: 公共类 MobileOtpService :IMobileOptService { 私有只读 HttpClient _client; public MobileOtpService(HttpClient client) // 这是如何注入的? {

回答 1 投票 0

C# 来自继承的依赖注入

我之前看到过无需显式注入接口的实现,创建接口时可以简单地继承例如接口“IamContainerRegistered”并在comp...

回答 1 投票 0

YamlDotNet的IDeserializer可以作为IServiceCollection中的单例使用吗?

我正在配置一个 YamlDotNet 反序列化器,如下所示: 静态 IDeserializer CreateYamlDeserializer() { var 反序列化器 = new DeserializerBuilder() .WithNamingConvention(CamelCaseNamingConven...

回答 2 投票 0

带参数的依赖注入

我有一个WPF应用程序。在左侧的主窗口中,是一个包含多个条目的列表框,右侧是一个 ContentControl,当选择其中一个条目时,UserControl 会随之...

回答 1 投票 0

Laravel Service Container零配置解决自动注入失败

我最近刚刚开始学习 Laravel,并决定深入实践中学习。 据我从文档 [示例:1] [示例:2] 中了解到,我可以在构造函数中键入提示属性

回答 1 投票 0

WPF 中的 AddScoped 和 AddSingleton 有什么区别吗?

在 WPF 或任何不作为服务 Web 请求的 Web 应用程序运行的控制台应用程序的上下文中,如果我使用 Microsoft.Extensions.DependencyInjection,AddScoped 和 AddSingleton 方法如何

回答 1 投票 0

Blazor 中的依赖注入在切换页面时不起作用

我有课 公共类会话状态 { 公共 int id { 得到;放; } 公共布尔验证{得到;放; } } 在每个页面中,我都用 @inject SessionState 状态注入了类。 我...

回答 1 投票 0

使用 Spring Boot 在 JavaFX 应用程序中进行依赖注入

如何在 Spring Boot 应用程序中正确使用依赖注入? 我的软件有一个 JavaFX 主窗口和多个从主窗口打开和关闭的子对话框。我需要使用...

回答 1 投票 0

Android Dagger 可以协助将包含字符串的类注入到提供的改造实例中吗?

这里我有一个类,最初是一个带注释的注入类,名为 AppConfig 类 AppConfig @Inject 构造函数() { val configBaseURL1 : 字符串 = "baseURL1" val configBa...

回答 1 投票 0

Android Hilt - 如何注入viewModelScope

我想注入 viewModelscope 但我就是做不到。 类 PostPageSource @Inject 构造函数( val 存储库:MyRepository, val 范围:CoroutineScope, val 映射器:MyMapper ) : PageKeyedDataS...

回答 2 投票 0

如何使标准 Java 类的实例可用作 bean?

我有一个 Micronaut 控制器,它将 java.time.Clock 作为依赖项: @Controller(“/foo”) 类 FooListener ( 私人val时钟:时钟, ){ // ... } IntelliJ 警告:

回答 1 投票 0

自定义参数装饰器仅适用于nestjs中的控制器?

nestjs中的自定义参数装饰器仅适用于控制器吗? 我试图将它应用到一个类的函数的参数上,但是当我调用该函数时,它说预期有 1 个参数,wh...

回答 1 投票 0

如何将ILogger注入EFCore DbContext

我有 .net core 应用程序和 EFCore 数据库上下文: 公共类 MyappDbContext :DbContext { 私人 ILogger _logger; 公共MyappDbContext(DbContextOptions 我有带有 EFCore 数据库上下文的 .net core 应用程序: public class MyappDbContext : DbContext { private ILogger<MyappDbContext> _logger; public MyappDbContext(DbContextOptions<MyappDbContext> options) : base(options) { // ??? } } 在启动类中我注册了上下文: services.AddDbContext<MyappDbContext>(options => options.UseSqlServer(connectionString)); 如何注入MyappDbContext、ILogger或ILoggerFactory(创建记录器)? 您需要做的就是向上下文构造函数添加 ILoggerFactory 或 ILogger 参数: public class MyappDbContext : DbContext { private readonly ILogger<MyappDbContext> _logger; public MyappDbContext(DbContextOptions<MyappDbContext> options, ILogger<MyappDbContext> logger) : base(options) { _logger = logger; } } 如果您需要手动实例化 dbcontext: public class Startup { public static readonly ILoggerFactory logFactory = LoggerFactory.Create(builder => builder.AddDebug()); .... public Startup(IWebHostEnvironment env) { .... } public void ConfigureServices(IServiceCollection services) { .... } } public class MyDbContext : DbContext { private readonly ILoggerFactory _loggerFactory; public MyDbContext(DbContextOptions<MyDbContext> options, ILoggerFactory loggerFactory) : base(options) { _loggerFactory = loggerFactory; } protected override void OnConfiguring(DbContextOptionsBuilder optionsBuilder) { optionsBuilder.UseLoggerFactory(_loggerFactory); // optionsBuilder.EnableSensitiveDataLogging(); } } // Somewhere else var db = new MyDbContext(new DbContextOptions<MyDbContext>(), Startup.logFactory); 但我建议使用 DI 代替: public void ConfigureServices(IServiceCollection services) { services.AddDbContext<MyDbContext>(options => options.UseSqlServer(Configuration.GetConnectionString("Default")).UseLoggerFactory(logFactory)); } 在 DbContextOptionsBuilder 方法的注释中。UseLoggerFactory 说: 使用其中之一时无需调用此方法 “AddDbContext”方法,包括“AddDbContextPool”。 MSDN 参考

回答 3 投票 0

© www.soinside.com 2019 - 2024. All rights reserved.