Файл CustomActivitiesAndExtensions.xml в основном используется для указания дополнительных действий и / или расширений рабочих процессов, загружаемых службой сборки для поддержки процесса сборки.
Вот пример:
<?xml version="1.0" encoding="utf-8"?>
<Assemblies DownloadListedItemsOnly="true">
<Assembly LoadListedItemsOnly="true" FileName="CustomAssembly.dll" HostEnvironmentOption="All">
<Activities>
<Activity FullName="CustomAssembly.OnAgentActivity" HostEnvironmentOption="Agent"/>
<Activity FullName="CustomAssembly.OnControllerActivity" HostEnvironmentOption="Controller"/>
<Activity FullName="CustomAssembly.OnBothActivity" HostEnvironmentOption="All"/>
</Activities>
<Extensions>
<Extension FullName="CustomAssembly.OnAgentExtension" HostEnvironmentOption="Agent"/>
<Extension FullName="CustomAssembly.OnControllerExtension" HostEnvironmentOption="Controller"/>
<Extension FullName="CustomAssembly.OnBothExtension" HostEnvironmentOption="All"/>
</Extensions>
</Assembly>
</Assemblies>
Атрибут DownloadListedItemsOnly - это оптимизация, которую можно использовать для загрузки только сборок, указанных в этом файле, и игнорирования любых других.
И наконец,важно отметить, что если вы указываете сборку под элементом «Деяния» или «Расширения», у которой фактически нет действия или расширения (в зависимости от ситуации), которые можно обнаружить с помощью отражения, то эта сборка не будет загружена.Наиболее вероятным случаем, когда это будет проблемой, будет внедрение опыта разработки для вашей деятельности в отдельную сборку.