gpt4 book ai didi

c# - 如何使用工厂方法的返回值在启动类中添加单例

转载 作者:行者123 更新时间:2023-12-02 16:32:40 25 4
gpt4 key购买 nike

我正在尝试在我的启动类 Singleton 中使用 DI add。我想基于来自 appSettings 和 Factory 类的 processorStringName 添加适当的处理器?有可能以一种好的方式做到这一点吗?

 IProcessor processor = ProcessorFactory.CreateProcessor(Configuration, processorStringName);
services.AddSingleton<IProcessor, processor>();

最佳答案

services.AddSingleton<IProcessor, processor>();

这行不通,因为 processor 是变量名,而不是类型名。

Please review the overloads for AddSingleton .

你想要这个:

services.AddSingleton<IProcessor>( implementationInstance: processor );

或者这个:

services.AddSingleton<IProcessor>( implementationFactory: sp => processor );

关于c# - 如何使用工厂方法的返回值在启动类中添加单例,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/63244413/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com