C# 如何使用autofac通过依赖项注入进行实例化
我目前有这一行代码使用.net的DI工作C# 如何使用autofac通过依赖项注入进行实例化,c#,amazon-web-services,C#,Amazon Web Services,我目前有这一行代码使用.net的DI工作 services.AddSingleton<IAmazonS3>(client => new AmazonS3Client(id, secret, region)); 我的应用程序使用 using (var client = new AmazonS3Client()) { } 你的问题在这里: using (var client = new AmazonS3Client()) { } 您没有从DI容器解析该类,因此它会创建新实
services.AddSingleton<IAmazonS3>(client => new AmazonS3Client(id, secret, region));
我的应用程序使用
using (var client = new AmazonS3Client())
{
}
你的问题在这里:
using (var client = new AmazonS3Client())
{
}
您没有从DI容器解析该类,因此它会创建新实例
你需要做一些事情,比如:
var client=container.Resolve()代码>
或者将其注入构造函数
您的代码没有被命中,因为来自DI的返回将在解析时被调用
请查看此页面以了解更多选项。依赖关系的解析非常依赖于您的平台、代码库和代码库中使用的实践
您的问题在这里:
using (var client = new AmazonS3Client())
{
}
您没有从DI容器解析该类,因此它会创建新实例
你需要做一些事情,比如:
var client=container.Resolve()代码>
或者将其注入构造函数
您的代码没有被命中,因为来自DI的返回将在解析时被调用
请查看此页面以了解更多选项。依赖关系的解析非常依赖于您的平台、代码库和代码库中使用的实践
除了给出的答案之外,我很确定您的依赖项注册不正确。行.As(client=>newamazons3client())
应更改为.As()
@Greg good catch除了给出的答案之外,我很确定您注册的依赖项不正确。行.As(client=>newamazons3client())
应更改为.As()
@Greg good catch谢谢您的回复。它帮助我深刻地理解了我的错误。谢谢你的回复。它帮助我深刻地理解我错在哪里
using (var client = new AmazonS3Client())
{
}