Моя пользовательская активность рабочего процесса, унаследованная от базового базового класса.Это не поддерживается CRM:
public class MyWorkflow: MyWorkflowBase<int>
{
#region Overrides of CodeActivity
protected override void Execute(CodeActivityContext context) { throw new NotImplementedException(); }
#endregion
}
public abstract class MyWorkflowBase<T> : CodeActivity
{
}
Мне пришлось конвертировать мой Generic T в интерфейс и приводить фактический тип по мере необходимости, что не идеально.Плагины не страдают от этой участи, потому что они просто ищут реализацию IPlugin (который, если вы используете универсальный базовый класс, вам придется явно объявить, реализован в вашем классе плагинов. Определение базового класса как реализацииIPlugin не будет работать, если в вашей иерархии есть общий класс).