7

Qualcuno potrebbe suggerire cosa sto facendo male qui?Attività del flusso di lavoro personalizzato non visualizzata nella registrazione del plugin

Ho creato un'attività di flusso di lavoro personalizzato utilizzando questo esempio Create a custom workflow activity. Ma questo non si presenta come un plug-in/tipo di attività in Plugin Registration Tool. Vedi immagine qui sotto:

enter image description here

mio codice di esempio per l'attività di seguito:

codice aggiornato

using System; 
using System.Collections.Generic; 
using System.Linq; 
using System.Text; 
using System.Activities; 
using Microsoft.Xrm.Sdk; 
using Microsoft.Xrm.Sdk.Workflow; 

namespace TestCustomWorkflowActivity 
{ 
    public class SampleCustomActivity : CodeActivity 
    { 
     protected override void Execute(CodeActivityContext executionContext) 
     { 
      //Create the tracing service 
      ITracingService tracingService = executionContext.GetExtension<ITracingService>(); 

      //Create the context 
      IWorkflowContext context = executionContext.GetExtension<IWorkflowContext>(); 
      IOrganizationServiceFactory serviceFactory = executionContext.GetExtension<IOrganizationServiceFactory>(); 
      IOrganizationService service = serviceFactory.CreateOrganizationService(context.UserId); 

     } 
    } 
} 

Piattaforma
Dynamics CRM 2013 sul Locali v 6.1.2.112 (Installato UR1 SP1)
Dyna microfoni CRM 2015 in linea

.NET Framework versione
4,0

risposta

6

È un caso che la classe partecipazione deve essere essere pubblico?

class TestWfActivity 

Dovrebbe essere

public class TestWfActivity 

O che la Classe di attività deve risiedere direttamente dal vostro namepspace piuttosto che insdie classe TestWFActivity.

provare uno -

using System; 
using System.Collections.Generic; 
using System.Linq; 
using System.Text; 
using System.Activities; 
using Microsoft.Xrm.Sdk; 
using Microsoft.Xrm.Sdk.Workflow; 

namespace TestCustomWorkflowActivity 
{ 
    public class TestWfActivity 
    { 
     public class SampleCustomActivity : CodeActivity 
     { 
      protected override void Execute(CodeActivityContext executionContext) 
      { 
       //Create the tracing service 
       ITracingService tracingService = executionContext.GetExtension<ITracingService>(); 

       //Create the context 
       IWorkflowContext context = executionContext.GetExtension<IWorkflowContext>(); 
       IOrganizationServiceFactory serviceFactory = executionContext.GetExtension<IOrganizationServiceFactory>(); 
       IOrganizationService service = serviceFactory.CreateOrganizationService(context.UserId); 

      } 
     } 
    } 
} 

o

using System; 
using System.Collections.Generic; 
using System.Linq; 
using System.Text; 
using System.Activities; 
using Microsoft.Xrm.Sdk; 
using Microsoft.Xrm.Sdk.Workflow; 

namespace TestCustomWorkflowActivity 
{ 

     public class SampleCustomActivity : CodeActivity 
     { 
      protected override void Execute(CodeActivityContext executionContext) 
      { 
       //Create the tracing service 
       ITracingService tracingService = executionContext.GetExtension<ITracingService>(); 

       //Create the context 
       IWorkflowContext context = executionContext.GetExtension<IWorkflowContext>(); 
       IOrganizationServiceFactory serviceFactory = executionContext.GetExtension<IOrganizationServiceFactory>(); 
       IOrganizationService service = serviceFactory.CreateOrganizationService(context.UserId); 

      } 
     } 
} 
+0

Oh me stupido .............: @ –

+0

Ho pensato che questa sarebbe stata la causa in quanto apparentemente dovrebbe essere pubblica. Ma anche dopo aver aggiornato questo codice non mostra la classe nel Plugin Registration Tool. Vedere il codice aggiornato nel mio post in alto, –

+0

E aver completato il passaggio 13. "Nelle proprietà del progetto, sotto la scheda Firma, selezionare Firma l'assieme e fornire un nome file chiave. Gli assiemi di attività (e plug-in) del flusso di lavoro personalizzato devono essere firmato. " – DotNetHitMan

6

Ho avuto lo stesso problema esattamente mentre si lavora con il CRM 2013 (sia on-premise e on-line). Non sono mai riuscito a risolvere realmente il problema, ma ho facilmente risolto il problema utilizzando lo Strumento di registrazione dell'SDK 2015. Per ragioni sconosciute si lavora meglio.

+0

Grazie SebastianC!Era così. – Lenny

+0

Confermando di avere lo stesso problema su Plugin Registration Tool di SDK per CRM 2013. Dopo aver scaricato SDK per CRM 2015, sono stato in grado di aggiornare l'attività del flusso di lavoro. – Zec