Azure / Azure/durabletask

[DCR] Strongly Type CreateOrchestrationInstanceAsync

Abierto
#342 3 comentarios 0 reacciones 0 asignados Ver en GitHub
Lenguaje dominante
C#
Estrellas
1.7k
Forks
335
Merge medio
2 d 23 h
PR fusionados (30 d)
6

Descripción

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)

Guía de contribución

No hay ninguna guía de contribución indexada para este repositorio

Línea de trabajo

Comienza rastreando las sobrecargas object de CreateOrchestrationInstanceAsync y las API subyacentes en DurableContextExtensions.cs. Compara su comportamiento con las llamadas fuertemente tipadas a StartNewAsync descritas en el issue, incluidos tipos de valor como int. Se considera terminado cuando las sobrecargas compatibles proporcionan tipado fuerte sin requerir tipos de referencia ni boxing/unboxing, y el comportamiento afectado está verificado mediante las pruebas relevantes del repositorio.

Escrito por el modelo de indexación a partir del texto del issue.

Evaluación

Stack tecnológico
csharp
Área
backend
Tipo de issue
Nueva funcionalidad
Dificultad
5/5
Tiempo estimado
Más de una semana
Estado de actividad
Estancado
Claridad
Necesita aclaración
Aptitud para principiantes
25/100

Recibe los nuevos issues en tu correo

Un resumen breve de issues de GitHub para principiantes.