Application: storage account connection abstraction & use case
Nadie ha tomado este issue todavía.
Evaluación
- Dificultad
- 4/5
- Tiempo estimado
- 3-5 días
- Aptitud para principiantes
- 52/100
Línea de trabajo
Comienza en el proyecto AzStorage.Application e inspecciona el modelo de dominio existente de Storage Account y las referencias del proyecto; después revisa el límite del Azure SDK descrito en el issue. Añade la interfaz, el caso de uso, el manejo del resultado y pruebas unitarias fake o mock; se considera terminado cuando el proyecto de aplicación no tiene ninguna dependencia de Azure.Storage.* y las pruebas cubren el éxito y al menos dos escenarios de error.
Escrito por el modelo de indexación a partir del texto del issue.
Descripción
Goal
Define an application-layer port for connecting to and validating a storage account, independent of the concrete Azure SDK.
Why
Following ports-and-adapters (Domain/Application define interfaces, Infrastructure implements them with the Azure SDK) keeps business logic testable and swappable — e.g. easy to fake in unit tests, and open to supporting Azurite or other stores later.
Tasks
- Add
IStorageAccountConnectorinterface inAzStorage.Applicationwith a method likeValidateAndConnectAsync(StorageAccount account, CancellationToken ct). - Add a
ConnectToStorageAccountUseCase(plain class is fine, no need for a mediator library yet) that validates the domain object and delegates toIStorageAccountConnector. - Add a clear result type (success / specific failure reasons: invalid credentials, network error, forbidden) instead of leaking raw exceptions, so a future UI can show helpful error messages — this directly targets the common Storage Explorer complaint about vague "Unable to retrieve children" errors.
- Add unit tests using a fake/mock
IStorageAccountConnector.
Acceptance Criteria
AzStorage.Applicationhas zero direct dependency onAzure.Storage.*packages.- Unit tests cover success and at least two distinct failure scenarios.
Depends on
- Domain: model Storage Account & connection credentials
- Lenguaje dominante
- C#
- Estrellas
- 0
- Forks
- 0
- Métricas de merge de PR
- Sin PR fusionados en 30 d
Preparar el entorno
Este proyecto no incluye contenedor de desarrollo, Dockerfile ni guía de contribución, así que la configuración corre por tu cuenta: empieza por su README y consulta nuestra guía para la primera contribución para los pasos generales.
Primeros pasos
- Lee el issue completo y luego la guía de contribución del proyecto.
- Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
- Haz un fork del repositorio y trabaja en una rama.
- Abre un pull request que haga referencia al número del issue.
Más de hunterlan/AzStorage
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 88/100
-
Dificultad 4/5 3-5 días Aptitud para principiantes 52/100
-
Dificultad 4/5 3-5 días Aptitud para principiantes 52/100
-
Dificultad 4/5 3-5 días Aptitud para principiantes 45/100
-
Dificultad 4/5 3-5 días Aptitud para principiantes 48/100
Todos los issues de hunterlan/AzStorage
Issues similares
-
A numeric literal is parsed in the host's culture, so 1.5 is 15 in a made EXE on a comma-decimal OSAbiertobug interpreter silently-wrong small
Dificultad 2/5 1-3 horas Aptitud para principiantes 83/100
Los mantenedores suelen responder en 1 día
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 76/100
Los mantenedores suelen responder en 1 día
-
bug
Dificultad 2/5 1-3 horas Aptitud para principiantes 66/100
reactiveui/ReactiveUI.Binding.SourceGenerators#176 ·
Los mantenedores suelen responder en 1 día
-
Dificultad 1/5 Menos de una hora Aptitud para principiantes 76/100
dotnet/csharpstandard#1830 ·
Los mantenedores suelen responder en 1 día
-
c:docs p:high size:S t:docs
Dificultad 2/5 1-3 horas Aptitud para principiantes 64/100
Los mantenedores suelen responder en 1 día