gpt4 book ai didi

c# - 按类型名称从 StructureMap 获取实例

转载 作者:行者123 更新时间:2023-11-30 18:44:41 25 4
gpt4 key购买 nike

有什么方法可以通过类型的字符串名称从 StructureMap ObjectFactory 请求实例吗?例如,做这样的事情会很好:

var thing = ObjectFactory.GetInstance("Thing");

这里的用例是一个消息传递场景,其中消息非常通用并且只包含任务名称。处理程序接收消息,从消息中获取任务名称,并从配置数据库中检索关联任务运行程序的类型名称。 StructureMap 扫描目录中的所有程序集,其中一个将(大概)包含从配置数据库返回的类型,然后需要对其进行实例化。

另一种可能性是通过执行以下操作来获取 Type 实例:

var type = Type.GetType("Thing");

但问题是程序集可能会或可能不会加载到 AppDomain 中,因此反射调用并不总是可能的。

最佳答案

我最近遇到了完全相同的问题,即 GetType 没有返回类型事件,尽管 StructureMap 已从扫描的程序集中正确加载它。

我的问题是我没有使用程序集限定名称,我假设没有这个 GetType 方法只是在当前程序集中查找。

无论如何添加全名解决了我的问题。

希望这对您有所帮助。

伊恩

关于c# - 按类型名称从 StructureMap 获取实例,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2426752/

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