@@ -56,34 +56,18 @@ public static class MyFunctions
5656#### Class-based example
5757
5858``` csharp
59- [DurableTask (nameof (MyActivity ))]
60- public class MyActivity : TaskActivity <string , string >
59+ [Function (nameof (MyOrchestration ))]
60+ public static async Task < string > MyOrchestration (
61+ [OrchestrationTrigger ] TaskOrchestrationContext context )
6162{
62- private readonly ILogger logger ;
63-
64- public MyActivity (ILogger <MyActivity > logger ) // activities have access to DI.
65- {
66- this .logger = logger ;
67- }
68-
69- [Function (nameof (MyActivity ))]
70- public async override Task <string > RunAsync ([ActivityTrigger ] TaskActivityContext context , string input )
71- {
72- // implementation
73- }
63+ string input = context .GetInput <string >()! ;
64+ return await context .CallActivityAsync <string >(nameof (MyActivity ), input );
7465}
7566
76- [DurableTask (nameof (MyOrchestration ))]
77- public class MyOrchestration : TaskOrchestrator < string , string >
67+ [Function (nameof (MyActivity ))]
68+ public static string MyActivity ([ ActivityTrigger ] string input )
7869{
79- [Function (nameof (MyOrchestration ))]
80- public async override Task <string > RunAsync ([OrchestrationTrigger ] TaskOrchestrationContext context , string input )
81- {
82- ILogger logger = context .CreateReplaySafeLogger <MyOrchestration >(); // orchestrations do NOT have access to DI.
83-
84- // An extension method was generated for directly invoking "MyActivity".
85- return await context .CallMyActivityAsync (input );
86- }
70+ return $" Processed: {input }" ;
8771}
8872```
8973
0 commit comments