Обычно, когда вы сами начинаете разработку библиотеки классов плагинов в Visual Studio, вы будете использовать базовый скелет и стандартный код, описанный в MSDN . При этом используется IServiceProvider
напрямую для получения всех контекстов и сервисов.
public class FollowupPlugin: IPlugin
{
public void Execute(IServiceProvider serviceProvider)
{
//Extract the tracing service for use in debugging sandboxed plug-ins.
ITracingService tracingService =
(ITracingService)serviceProvider.GetService(typeof(ITracingService));
// Obtain the execution context from the service provider.
IPluginExecutionContext context = (IPluginExecutionContext)
serviceProvider.GetService(typeof(IPluginExecutionContext));
}
}
Принимая во внимание, что CRM-инструментарий для разработчиков - это визуальный студийный плагин, который поможет вам в разработке плагинов QuickStart с помощью шаблонов. Это дает вам LocalPluginContext
, что обеспечивает легкий доступ к услугам, предоставляемым IServiceProvider
. Это обертка поверх нативных классов.