feature : Multiple validation context support
Los mantenedores suelen responder en 3 días
Nadie ha tomado este issue todavía.
Evaluación
- Dificultad
- 5/5
- Tiempo estimado
- Más de una semana
- Aptitud para principiantes
- 25/100
- Tipo de issue
- Nueva funcionalidad
- Claridad
- Bastante claro
- Estado de actividad
- Estancado
- Stack tecnológico
- csharp
- Área
- backend-api-design
Línea de trabajo
Empieza revisando los métodos ValidationRule(...) y BindValidation(...) existentes y el contexto de validación de IValidatableViewModel; después, compáralos con la rama multiple_validation_contexts propuesta y enlazada en el issue. Se considera terminado cuando un único ViewModel puede admitir contextos de validación separados para bloquear procesos externos y mostrar errores de forma independiente.
Escrito por el modelo de indexación a partir del texto del issue.
Descripción
Is your feature request related to a problem? Please describe.
Had a case where i needed to have validations that stop and block an external process and others that simply display the error without blocking or stopping anything. I also needed to display these validations separately.
Describe the solution you'd like
I thinked of having multiple validation contexts in a single ViewModel. To do so I made overloads for the "ValidationRule(...)" and "BindValidation(...)" methods. I added a "Func<TViewModel, ValidationContext> validationContextProperty" parameter to those methods and use it instead of the one present by default in the "IValidatableViewModel" interface.
Describe alternatives you've considered
An alternative could have been to create multiple validation classes inheriting from IValidationComponent but that also means adding methods to add them to the validation context. I would also need to create functions to filter them in order to know if a validation of type x is false.
Describe suggestions on how to achieve the feature
Made modifications of the code of this repo and uploaded everything on this github in the multiple validation context branch.
https://github.com/brignolff/Mdified.ReactiveUI.Vaidation/tree/multiple_validation_contexts
- Lenguaje dominante
- C#
- Estrellas
- 273
- Forks
- 30
- Merge medio
- 4 d 10 h
- PR fusionados (30 d)
- 15
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 reactiveui/ReactiveUI.Validation
-
Dependency DashboardAbierto
Dificultad 3/5 1-2 días Aptitud para principiantes 20/100
reactiveui/ReactiveUI.Validation#634 ·
Los mantenedores suelen responder en 3 días
-
Dificultad 4/5 3-5 días Aptitud para principiantes 45/100
reactiveui/ReactiveUI.Validation#463 · 2 reacciones ·
Los mantenedores suelen responder en 3 días
-
enhancement
Dificultad 4/5 3-5 días Aptitud para principiantes 35/100
reactiveui/ReactiveUI.Validation#414 · 2 comentarios ·
Los mantenedores suelen responder en 3 días
-
feature: add benchmarksAbiertoPerformance
Dificultad 3/5 1-2 días Aptitud para principiantes 35/100
reactiveui/ReactiveUI.Validation#117 ·
Los mantenedores suelen responder en 3 días
Todos los issues de reactiveui/ReactiveUI.Validation
Issues similares
-
affected/v17 affected/v18 area/frontend type/bug
Dificultad 2/5 1-3 horas Aptitud para principiantes 82/100
umbraco/Umbraco-CMS#24186 ·
Los mantenedores suelen responder en 2 días
-
.NET Azure Functions Docs OpenTelemetry
Dificultad 2/5 1-3 horas Aptitud para principiantes 82/100
getsentry/sentry-dotnet#5715 · 1 comentario ·
Los mantenedores suelen responder en 2 días
-
AssignTargetPath does not recognize forward slashes in relative path specifiersPosiblemente ocupada @AustinAviv la tomó hoy. Abierto
Dificultad 2/5 1-3 horas Aptitud para principiantes 79/100
Los mantenedores suelen responder en 2 días
-
needs-area-label
Dificultad 2/5 1-3 horas Aptitud para principiantes 82/100
Los mantenedores suelen responder en 1 día
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 76/100
Fallout-build/Fallout#708 ·
Los mantenedores suelen responder en 5 días