【发布时间】:2021-03-08 23:00:19
【问题描述】:
我们最近开始使用 D365 构建应用程序。这是从我们使用 spring 进行依赖注入的 java 的转变。 IServiceProvider 似乎做了依赖注入,但我还没有找到任何方法让它与我们的本地服务一起工作。
我们的代码如下所示:
public void Execute(IServiceProvider serviceProvider)
{
IPluginExecutionContext context = (IPluginExecutionContext)serviceProvider.GetService(typeof(IPluginExecutionContext));
IOrganizationServiceFactory factory = (IOrganizationServiceFactory)serviceProvider.GetService(typeof(IOrganizationServiceFactory));
IOrganizationService service = factory.CreateOrganizationService(context.UserId);
// ... do stuff ...
}
我想在以下行中添加:
MyHomeGrownService myHomeGrownService = (MyHomeGrownService )serviceProvider.GetService(typeof(MyHomeGrownService));
但是我不知道怎么注册MyHomeGrownService;我也没有找到很多关于这个主题的文档。
如果没有正确的依赖注入,开发人员不得不在代码中使用new,这使得正确的单元测试几乎不可能。
如何注册自定义服务?
【问题讨论】:
标签: c# dynamics-365