我有应该MVC项目,为了读取appsetting.json 中的数据,我在.NET 6中只能用依赖注入的办法。在controller中实现依赖注入比较简单。
但是,我想在其它的类中实现依赖注入怎么办?
比如,下面的代码,就报错,说 var tgetterInfo = _userInfos.Value; 中的_userInfos需要生成对象:
public class UserService
{
private readonly IOptions<List<String>> _userInfos;
public UserService(IOptions<List<String>> userInfo)
{
_userInfos = userInfo;
}
public static bool GetterInfoValidate(String inputInfo)
{
if (getterInfo == null || triggerTime < DateTime.UtcNow.AddMinutes(-5))
{
var tgetterInfo = _userInfos.Value;
}
foreach (var item in getterInfo)
{
if (item == inputInfo) return true;
}
return false;
}
}
UserService 注册到容器了没有啊
不要说框架蠢,多了解一下
https://docs.microsoft.com/zh-cn/aspnet/core/fundamentals/dependency-injection?view=aspnetcore-6.0
当然注册到容器了
@泰德: BelowLimit是静态方法,在静态方法里调用实例字段,肯定是null了
在构造函数中注入,参考 .NET Core类库项目中如何读取appsettings.json中的配置
已经在Class的构造函数中注入了,但是在类的方法中引用 _userInfos 的时候,说“没有引用到对象的实例”
为什么微软在.NET Core中,要用这种注入的方法读取配置文件??感觉非常愚蠢