[英]c# class inherits from base class with constructor with dependency injection
[英]How can I code a class constructor in a class that inherits from a base class where the base class needs a service injected?
誰能給我一些建議。 我在用
Microsoft.Extensions.DependencyInjection 版本 5.0.1 nuget package
我有許多不同的視圖,它們都基於 LogBase。 在 logBase 中有設置的屬性,所以我需要注入 ConfigService:
public class LogViews : LogBase
{
public LogViews()
{
//
}
//
}
public class LogBase
{
private readonly IConfigService _configService;
public LogBase(IConfigService configService)
{
_configService = configService;
X = _configService.X;
}
}
但是當代碼運行時,它會在public LogViews()
出現錯誤,因為它試圖調用需要 configService 參數的 LogBase 構造函數。
有誰知道如何解決這個 DI 問題?
您應該定義LogViews
的參數化構造函數,該構造函數應該注入IConfigService
實例。 同樣可以傳遞給基本構造函數,如下所示
public class LogViews : LogBase
{
public LogViews(IConfigService configService) : base(configService)
{
//
}
//
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.