Versionen im Vergleich

Schlüssel

  • Diese Zeile wurde hinzugefügt.
  • Diese Zeile wurde entfernt.
  • Formatierung wurde geändert.

Ihre Aktivität sollte von einer der folgenden Basisklassen ableiten

  • CodeActivity
  • NativeActivity
  • AsyncCodeActivity





Beispiel "Skeleton" für eine CodeActivity:

Wichtigste Eigenschaften:

  • InArgumente: Eingehende Argumente

  • OutArgumente : Ausgehende Argumente

  • CacheMetadata(CodeActivityMetadata): Validierung zur Design Zeit

  • Execute(CodeActivityContext): Implementierung der Aktivität


Codeblock
languagec#
titleBeispiel für eine CodeActivity
using System;
using System.Activities;
using Accantum.Wms.ActivityContracts.Attributes;

namespace CodeActivity
{
    public class HelloworldActivity: CodeActivity
    {
        public HelloworldActivity()
        {
            DisplayName = "Hello-World Aktivität";
        }

		// InArgumente

        public InArgument<string> Text{ get; set; }


		// OutArgumente


		public OutArgument<string> Result { get; set; }


		// Optional: Validierung zur Design Time

        protected override void CacheMetadata(CodeActivityMetadata a_oMetadata)
        {
            if (CodeActivityArgument?.Expression == null)
                a_oMetadata.AddValidationError("Geben Sie etwas ein");
          
        }


		// Methode die aufgerufen wird, wenn die Aktivität ausgeführt wird.
		
        protected override void Execute(CodeActivityContext a_oContext)
        {
            // TODO 
        }
    }
}




Beispiel "Skeleton" für eine AsyncCodeActivity:

Wichtigste Eigenschaften:

  • InArgumente: Eingehende Argumente

  • OutArgumente : Ausgehende Argumente

  • CacheMetadata(CodeActivityMetadata): Validierung zur Design Zeit

  • BeginExecute(AsyncCodeActivityContext, IAsyncResult): Start des asyncronen Aufrufs

  • EndExecute(AsyncCodeActivityContext, IAsyncResult): Ende des asyncronen Aufrufs


Codeblock
languagec#
titleBeispiel für eine AsyncCodeActivity
using System;
using System.Activities;
using Accantum.Wms.ActivityContracts.Attributes;

namespace AsyncCodeActivity
{
    public class HelloworldActivity: AsyncCodeActivity
    {
        public HelloworldActivity()
        {
            DisplayName = "Hello-World Aktivität";
        }

		// InArgumente

        public InArgument<string> Text{ get; set; }


		// OutArgumente


		public OutArgument<string> Result { get; set; }


		// Optional: Validierung zur Design Time

        protected override void CacheMetadata(AsyncCodeActivityMetadata a_oMetadata)
        {
            if (CodeActivityArgument?.Expression == null)
                a_oMetadata.AddValidationError("Geben Sie etwas ein");
          
        }


	protected override IAsyncResult BeginExecute(AsyncCodeActivityContext context, AsyncCallback callback, 
	object state)
    {
		// TODO 
        // Start des asyncronen Aufrufs
    }

    protected override void EndExecute(AsyncCodeActivityContext context, IAsyncResult result)
    {
		// TODO
   	 	// callback des asyncronen Aufrufs
    }
  }
}




Beispiel "Skeleton" für eine NativeActivity:

Wichtigste Eigenschaften:

  • InArgumente: Eingehende Argumente

  • OutArgumente : Ausgehende Argumente

  • CacheMetadata(NativeActivityMetadata): Validierung zur Design Zeit

  • Execute(NativeActivityContext): Implementierung der Aktivität


Codeblock
languagec#
titleBeispiel für eine NativeActivity
using System;
using System.Activities;
using Accantum.Wms.ActivityContracts.Attributes;

namespace NativeActivity
{
    public class HelloworldActivity: NativeActivity
    {
        public HelloworldActivity()
        {
            DisplayName = "Hello-World Aktivität";
        }

		// InArgumente

        public InArgument<string> Text{ get; set; }


		// OutArgumente


		public OutArgument<string> Result { get; set; }


		// Optional: Validierung zur Design Time

        protected override void CacheMetadata(NativeActivityMetadata a_oMetadata)
        {
            if (CodeActivityArgument?.Expression == null)
                a_oMetadata.AddValidationError("Geben Sie etwas ein"); 
        }


		// Methode die aufgerufen wird, wenn die Aktivität ausgeführt wird.
		
        protected override void Execute(NativeActivityContext a_oContext)
        {
            // TODO 
        }
    }
}