[DCR] Strongly Type CreateOrchestrationInstanceAsync
- Vorherrschende Sprache
- C#
- Sterne
- 1.7k
- Forks
- 335
- Ø Merge
- 2 T. 23 Std.
- Gemergte PRs (30 T.)
- 6
Beschreibung
I think it'd be a good exercise to see what it would take to change our `object` overloads to generic ones so we can more strongly-type the developer experience instead of having to rely on boxing/unboxing.
In Durable Functions, we're [now strongly-typing our calls to `StartNewAsync`](https://github.com/Azure/azure-functions-durable-extension/commit/8446057cee423b9b652e3e34e99ca73fd45415a6) which hits these APIs underneath, but unfortunately this still results in boxing/unboxing and [forces us to take reference types](https://github.com/Azure/azure-functions-durable-extension/blob/master/src/WebJobs.Extensions.DurableTask/ContextInterfaces/DurableContextExtensions.cs#L430) vs accepting all types (e.g. `int`) which [has caused some confusion for developers](https://github.com/Azure/azure-functions-durable-extension/issues/1056)
Beitragsleitfaden
Für dieses Repository ist kein Beitragsleitfaden indexiert
Rechercherichtung
Beginne damit, die object-Überladungen von CreateOrchestrationInstanceAsync und die APIs darunter in DurableContextExtensions.cs nachzuverfolgen. Vergleiche ihr Verhalten mit den im Issue beschriebenen stark typisierten Aufrufen von StartNewAsync, einschließlich Werttypen wie int. Als erledigt gilt die Aufgabe, wenn die unterstützten Überladungen starke Typisierung bieten, ohne Referenztypen oder Boxing/Unboxing zu erfordern, und das betroffene Verhalten durch die relevanten Tests des Repositorys verifiziert ist.
Vom Indexierungsmodell aus dem Issue-Text verfasst.
Bewertung
- Tech-Stack
- csharp
- Bereich
- backend
- Issue-Typ
- Feature
- Schwierigkeit
- 5/5
- Geschätzter Aufwand
- Über eine Woche
- Aktivitätsstatus
- Veraltet
- Klarheit
- Muss geklärt werden
- Anfängerfreundlichkeit
- 25/100