【发布时间】:2019-01-18 11:20:42
【问题描述】:
目标:拥有一个正在运行的托管服务处理队列(来自云服务)并将它们动态路由到控制器。有点像 php 中的 Larval 框架调用作业。
当前实施:
Type type = Type.GetType(nameSpace + ".Controllers." + sqsMessage.controller);
Object obj = Activator.CreateInstance(type, null);
MethodInfo methodInfo = type.GetMethod(sqsMessage.method);
result = methodInfo.Invoke(obj, sqsMessage.body);
为什么当前的实现不起作用: 控制器具有参数不同的构造函数,队列发送者不必负责传递这些参数:
示例:
控制器 1 - 构造函数 1 任务 ILogger 参数
控制器 2 - 构造函数采用零参数
问题:如何从正在运行的后台服务中动态调用控制器和特定操作?
使用 asp.net core 2.1
【问题讨论】:
标签: c# asp.net dynamic asp.net-core controller